Implement Caching, Mavenize, Code Cleanup