Two cache implementation: ModelMemCache and ModelStoreCache (that uses SmartStore - but not yet tested) - both behaves similarly (return promises etc) / Cache wrired into sync method - but right now doing cache update in sync event handler and so immediate read from cache will not see last change