initial implementation with tests using local datastore provided by Google App Engine