Added documentation for the new pluggable cache filename generation in FileCache
diff --git a/libhttplib2.tex b/libhttplib2.tex
index a2c5529..8755256 100644
--- a/libhttplib2.tex
+++ b/libhttplib2.tex
@@ -162,6 +162,16 @@
 an \class{rfc822.Message} or an \class{httplib.HTTPResponse} object.
 \end{classdesc}
 
+\begin{classdesc}{FileCache}{dir_name, \optional{safe=safename}}
+FileCache implements a Cache as a directory of files.
+The \var{dir_name} parameter is
+the name of the directory to use. If the directory does
+not exist then FileCache attempts to create the directory.
+The optional \var{safe} parameter is a funtion which generates
+the cache filename for each URI. A FileCache object is 
+constructed and used for caching when you pass a directory name
+into the constructor of \class{Http}.
+\end{classdesc}
 
 
 % If your module defines new object types (for a built-in module) or
diff --git a/ref/cache-objects.html b/ref/cache-objects.html
index f84cc23..1ce96ea 100644
--- a/ref/cache-objects.html
+++ b/ref/cache-objects.html
@@ -62,7 +62,7 @@
 
 <P>
 <dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
-  <td><nobr><b><tt id='l2h-16' xml:id='l2h-16' class="method">get</tt></b>(</nobr></td>
+  <td><nobr><b><tt id='l2h-17' xml:id='l2h-17' class="method">get</tt></b>(</nobr></td>
   <td><var>key</var>)</td></tr></table></dt>
 <dd>
 Takes a string <var>key</var> and returns the value as a string.
@@ -70,7 +70,7 @@
 
 <P>
 <dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
-  <td><nobr><b><tt id='l2h-17' xml:id='l2h-17' class="method">set</tt></b>(</nobr></td>
+  <td><nobr><b><tt id='l2h-18' xml:id='l2h-18' class="method">set</tt></b>(</nobr></td>
   <td><var>key, value</var>)</td></tr></table></dt>
 <dd>
 Takes a string <var>key</var> and <var>value</var> and stores it in the cache.
@@ -78,7 +78,7 @@
 
 <P>
 <dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
-  <td><nobr><b><tt id='l2h-18' xml:id='l2h-18' class="method">delete</tt></b>(</nobr></td>
+  <td><nobr><b><tt id='l2h-19' xml:id='l2h-19' class="method">delete</tt></b>(</nobr></td>
   <td><var>key</var>)</td></tr></table></dt>
 <dd>
 Deletes the cached value stored at <var>key</var>. The value
diff --git a/ref/http-objects.html b/ref/http-objects.html
index dc69b47..5032c54 100644
--- a/ref/http-objects.html
+++ b/ref/http-objects.html
@@ -59,7 +59,7 @@
 
 <P>
 <dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
-  <td><nobr><b><tt id='l2h-11' xml:id='l2h-11' class="method">request</tt></b>(</nobr></td>
+  <td><nobr><b><tt id='l2h-12' xml:id='l2h-12' class="method">request</tt></b>(</nobr></td>
   <td><var>uri, </var><big>[</big><var>method="GET", body=None, headers=None, redirections=DEFAULT_MAX_REDIRECTS</var><big>]</big><var></var>)</td></tr></table></dt>
 <dd>
 Performs a single HTTP request.
@@ -87,7 +87,7 @@
 
 <P>
 <dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
-  <td><nobr><b><tt id='l2h-12' xml:id='l2h-12' class="method">add_credentials</tt></b>(</nobr></td>
+  <td><nobr><b><tt id='l2h-13' xml:id='l2h-13' class="method">add_credentials</tt></b>(</nobr></td>
   <td><var>name, password</var>)</td></tr></table></dt>
 <dd>
 Adds a name and password that will be used when a request 
@@ -96,14 +96,14 @@
 
 <P>
 <dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
-  <td><nobr><b><tt id='l2h-13' xml:id='l2h-13' class="method">clear_credentials</tt></b>(</nobr></td>
+  <td><nobr><b><tt id='l2h-14' xml:id='l2h-14' class="method">clear_credentials</tt></b>(</nobr></td>
   <td><var></var>)</td></tr></table></dt>
 <dd>
 Remove all the names and passwords used for authentication.
 </dl>
 
 <P>
-<dl><dt><b><tt id='l2h-14' xml:id='l2h-14' class="member">follow_all_redirects</tt></b></dt>
+<dl><dt><b><tt id='l2h-15' xml:id='l2h-15' class="member">follow_all_redirects</tt></b></dt>
 <dd>
 If <code>False</code>, which is the default, only safe redirects are followed, where
 safe means that the client is only doing a <code>GET</code> or <code>HEAD</code> on the
@@ -111,7 +111,7 @@
 </dl>
 
 <P>
-<dl><dt><b><tt id='l2h-15' xml:id='l2h-15' class="member">ignore_etag</tt></b></dt>
+<dl><dt><b><tt id='l2h-16' xml:id='l2h-16' class="member">ignore_etag</tt></b></dt>
 <dd>
 Defaults to <code>False</code>. If True, then any etags present in the cached response
 are ignored when processing the current request, i.e. httplib2 does *not* use
diff --git a/ref/module-httplib2.html b/ref/module-httplib2.html
index 2b660c6..5ead329 100644
--- a/ref/module-httplib2.html
+++ b/ref/module-httplib2.html
@@ -174,6 +174,21 @@
 </dl>
 
 <P>
+<dl><dt><table cellpadding="0" cellspacing="0"><tr valign="baseline">
+  <td><nobr><b><span class="typelabel">class</span>&nbsp;<tt id='l2h-11' xml:id='l2h-11' class="class">FileCache</tt></b>(</nobr></td>
+  <td><var>dir_name, </var><big>[</big><var>safe=safename</var><big>]</big><var></var>)</td></tr></table></dt>
+<dd>
+FileCache implements a Cache as a directory of files.
+The <var>dir_name</var> parameter is
+the name of the directory to use. If the directory does
+not exist then FileCache attempts to create the directory.
+The optional <var>safe</var> parameter is a funtion which generates
+the cache filename for each URI. A FileCache object is 
+constructed and used for caching when you pass a directory name
+into the constructor of <tt class="class">Http</tt>.
+</dl>
+
+<P>
 
 <p><br /></p><hr class='online-navigation' />
 <div class='online-navigation'>
diff --git a/ref/response-objects.html b/ref/response-objects.html
index 7848f3e..49a3d67 100644
--- a/ref/response-objects.html
+++ b/ref/response-objects.html
@@ -61,32 +61,32 @@
 a Response object also has:
 
 <P>
-<dl><dt><b><tt id='l2h-19' xml:id='l2h-19' class="member">fromcache</tt></b></dt>
+<dl><dt><b><tt id='l2h-20' xml:id='l2h-20' class="member">fromcache</tt></b></dt>
 <dd>
 If <code>true</code> the the response was returned from the cache.
 </dl>
 
 <P>
-<dl><dt><b><tt id='l2h-20' xml:id='l2h-20' class="member">version</tt></b></dt>
+<dl><dt><b><tt id='l2h-21' xml:id='l2h-21' class="member">version</tt></b></dt>
 <dd>
 The version of HTTP that the server supports. A value
 of 11 means '1.1'.
 </dl>
 
 <P>
-<dl><dt><b><tt id='l2h-21' xml:id='l2h-21' class="member">status</tt></b></dt>
+<dl><dt><b><tt id='l2h-22' xml:id='l2h-22' class="member">status</tt></b></dt>
 <dd>
 The numerical HTTP status code returned in the response.
 </dl>
 
 <P>
-<dl><dt><b><tt id='l2h-22' xml:id='l2h-22' class="member">reason</tt></b></dt>
+<dl><dt><b><tt id='l2h-23' xml:id='l2h-23' class="member">reason</tt></b></dt>
 <dd>
 The human readable component of the HTTP response status code.
 </dl>
 
 <P>
-<dl><dt><b><tt id='l2h-23' xml:id='l2h-23' class="member">previous</tt></b></dt>
+<dl><dt><b><tt id='l2h-24' xml:id='l2h-24' class="member">previous</tt></b></dt>
 <dd>
 If redirects are followed then the <tt class="class">Response</tt> object returned
 is just for the very last HTTP request and <var>previous</var> points to