require a class for cache computations
no need for the const_get since we lock
add a failing test for marshal + cache problems
move the cache to the AR models and populate it on inherited