Restructuring with model observer for 5.3 compatibility

PR for working towards issue #6.