Moved all code out of headers
Merge branch 'master' into clean-interface
Merge branch 'master' into clean-interface
Moved some getters to the header