CORE-307 - First pass that compiles and passes basic debugging.
Merge branch 'feature/CORE-307and309' into develop