[Refactor] split up navigation and introduce inheritance
Now there is a interface for the navigation and the class specific code in is in a class-specific subclass.
Now there is a interface for the navigation and the class specific code in is in a class-specific subclass.