replace cache implementation with google guava