Added a very simple disk cache and some basic unittests.