Added an interface that allows users to override the default disc caching of the library. This would be to help users who may want/need things like encrytpion - without the library having knowledge of it