Refactoring weber controller

Please discuss about how I've think should use Weber.Controller.