Add user controller with tests.
Fix file indentation.
Add source controller, tests.
Merge branch '1018_user_controller' into develop
Finalize tests, emit events on write operations.
Fix merge conflicts.
Clean-up old API file.
Pull new changes from develop branch.