Baisc controllers

Use nested module/class definitions instead of compact style.