Improved Caching and Architecture Changes

[NEW] Caching is now happening on entity-granularity
[NEW] Architecture for dealing with Document-Chunks (preparing for
long-document support)