AbstractService: implementation of all methods and tests

This closes #22

Summary:
- Remove package test (all test classes now reside in the same package as the class under test)
- Move tests to correct package
- Assets for tests 
- Implementation for abstract service with unit tests