Merge branch 'develop'
More work on service and usecase layers