Rename controller
Introduce abstract controller