Started building caching mechanism
Added caching and repo serialization
Merge branch 'unstable'