Improve performance of class and virtual bindings with SafeCacheKey strategy

* Re-use the _latest_by_updated_at object for class bindings, to eliminate
  multiple queries for the same object.
* Memoize the partial database object fetched for virtual bindings.
A couple small changes to benchmarking