added checks for invalid cache directory contents and default behavior works now
write_allowed and write_on_cache permissions propogate correctly down through caching hierarching when necessary
documentation added to repository
more return handlers that I needed for DynDocModel but thought belonged here