There are three controllers that are available by default:
AdminController SiteController PublicController
If you want more controllers, use routes (http://www.impresspages.org/docs/routing) but then you have to do security checks on your own:
\Ip\Internal\Admin\Backend::userId() //check if admin is logged in
ipAdminPermission($plugin) //check if current admin has right to access plugin.