Rough service layer completed with unit testing