Added ability to set cache control header max-age and cacheability

This change uses a callback function similar to UseResource or UseLocalIfAvailable, easily allowing either global or per-resource settings.

This is in regards to issue https://github.com/mcintyre321/EmbeddedResourceVirtualPathProvider/issues/9

Let me know if you have any problems with it.  It maintains the default behaviour of no caching while allowing a developer to set custom cache behaviour on a global or a per-resource simply by changing the new CacheControl callback.