much logic refactored into resource
remove unnecessary dependency
remove obsolete resource factory
refactor services into separate resources and services. use stock CRUD functions for  resource objects.