Cache 1033476

* [ ] Add caching of topics too.

This adds an option for updating the cache if the user doesn't have many documents cached already.

* Many is defined as 5 or less. 
As I mentioned elsewhere should probably resolve true or false instead of rejecting or resolving.