Initial commit for generic controllers, removed some too specific features for now