added base controller and model