prototype implementation of generic repository and service