Base functionality (abstract controller, navigation factory)