Add layout to 4.1 controller

Used `Controller::__construct()` to call `setupLayout()` so it doesn't have to be made public, making 4.0->4.1 migration easier.
Otherwise it's the same as is in 4.0.