Change loading cache to be injectable
Database now ready to accept multiple file sources

TODO: Cache indexes