Vmg/new cache

New cache code. Did this during the flight.

As long promised, here's an unified ODB object/parsed object cache that transparently upgrades between the two of them. It uses `khash` as the backend.

TODO:

- [ ] Settings setter/getters for cache tuneable parameters
- [ ] Expiration of old entries (lru? random?)
- [ ] Size calculation for parsed objects

wat