Initial attempt to not cache on content length missmatch
Add cache invalidation on receiving uncacheable content.

 * Don't cache pages with no content-length ( adjustable )
 * Don't cache pages with 0 content-length ( adjustable )
 * Don't cache pages with a content-length that doesn't match the length
 		of the received content. ( adjustable )

 * Adjustable options are trinary:
 		0 = don't cache on this condition
		1 = ignore this condition
		'warn' = report via 'onwarn' and then don't cache.

	Warnings all contain a unique E= string to provide something to scan
	for with a regexp that will retain some degree of consistency
	regardless of the localisation/formatting/wording of the message. (
			Like an exception somewhat, just ... not )

	Tests 004-cached and 005-custom-cache have been moved from google.com
	to wikipedia.org , as google.com's pages are poor pages to test
	caching capacity with as those pages are explicitly uncacheable, and
	don't contain content-length at all.

	Internal:

	Added an additional warning layer 'dwarn' , tuneable with the hidden
	option '_verbose_dwarn', which takes 2 args and is called as an object
	method.
```
		$thing->dwarn( $message, $a , $b, $c .... );
```
	In normal invocation, dwarn is just the same as 'warn' and only emits
	$message, but when	_dwarn_verbose is on, extra context is provided,
	by pretty printing tidied-up copies of the invocant ( `$thing` ), as
	well as the message, and any other passed parameters ( which are
			normally omitted from output ).

	Default settings:
	* cache undef : 0 ( don't cache )
	* cache zero : 0 ( don't cache )
	* cache mismatched : 'warn'  ( warn, and then don't cache )
Actually return true from _request_cache if none of the "dont cache" conditions hold.

Move the defaults list up and strip items that are also in the defaults
list before passing remaining args to the superclasses constructor.
Document new caching behaviour
tidyup copypaste documentation
Avoid possible decode() caused cache-avoidance by determining cacheability prior to decoding
Merge pull request #1 from kentfredric/contentlength

set of content-length handling patches.
Bumps version to 1.41 and updates docs