Provide easy way for changing hash algorithm.
Allow cache invokations for preprocessing.
Direct mode implementation.
Change structure of cache - place manifests in separate directory.