[eluser]WanWizard[/eluser]
You might want to look at Modular CI.
It supports loading secondary controllers (HMVC style). It includes a routing controller, which by default only has module routing capabilities, but as a controller it has full access to CI resources. It can access the database to retrieve detailed routing information, and then load the controller the loaded route points to.