Replace private with protected, so the class can be easily extended
diff --git a/system/libraries/Session.php b/system/libraries/Session.php
index ada97a0..3198607 100644
--- a/system/libraries/Session.php
+++ b/system/libraries/Session.php
@@ -575,10 +575,10 @@
 	 * Identifies flashdata as 'old' for removal
 	 * when _flashdata_sweep() runs.
 	 *
-	 * @access	private
+	 * @access	protected
 	 * @return	void
 	 */
-	private function _flashdata_mark()
+	protected function _flashdata_mark()
 	{
 		$userdata = $this->all_userdata();
 		foreach ($userdata as $name => $value)
@@ -597,11 +597,11 @@
 	/**
 	 * Removes all flashdata marked as 'old'
 	 *
-	 * @access	private
+	 * @access	protected
 	 * @return	void
 	 */
 
-	private function _flashdata_sweep()
+	protected function _flashdata_sweep()
 	{
 		$userdata = $this->all_userdata();
 		foreach ($userdata as $key => $value)
@@ -619,10 +619,10 @@
 	/**
 	 * Get the "now" time
 	 *
-	 * @access	private
+	 * @access	protected
 	 * @return	string
 	 */
-	private function _get_time()
+	protected function _get_time()
 	{
 		$now = time();
 		return (strtolower($this->time_reference) === 'gmt') ?
@@ -637,7 +637,7 @@
 	 * @access	public
 	 * @return	void
 	 */
-	private function _set_cookie($cookie_data = NULL)
+	protected function _set_cookie($cookie_data = NULL)
 	{
 		if (is_null($cookie_data))
 		{
@@ -678,11 +678,11 @@
 	 * This function first converts any slashes found in the array to a temporary
 	 * marker, so when it gets unserialized the slashes will be preserved
 	 *
-	 * @access	private
+	 * @access	protected
 	 * @param	array
 	 * @return	string
 	 */
-	private function _serialize($data)
+	protected function _serialize($data)
 	{
 		if (is_array($data))
 		{
@@ -700,7 +700,7 @@
 	 *
 	 * This function converts any slashes found into a temporary marker
 	 *
-	 * @access	private
+	 * @access	protected
 	 */
 	function _escape_slashes(&$val, $key)
 	{
@@ -718,11 +718,11 @@
 	 * This function unserializes a data string, then converts any
 	 * temporary slash markers back to actual slashes
 	 *
-	 * @access	private
+	 * @access	protected
 	 * @param	array
 	 * @return	string
 	 */
-	private function _unserialize($data)
+	protected function _unserialize($data)
 	{
 		$data = @unserialize(strip_slashes($data));
 
@@ -740,9 +740,9 @@
 	 *
 	 * This function converts any slash markers back into actual slashes
 	 *
-	 * @access	private
+	 * @access	protected
 	 */
-	private function _unescape_slashes(&$val, $key)
+	protected function _unescape_slashes(&$val, $key)
 	{
 		if (is_string($val))
 		{
@@ -761,7 +761,7 @@
 	 * @access	public
 	 * @return	void
 	 */
-	private function _sess_gc()
+	protected function _sess_gc()
 	{
 		if ($this->sess_use_database != TRUE)
 		{