model and tests of Service refactored. Closes #11. Closes #14.