Expose controller_public_protocol parameter

This is pretty useful when all API access should go through an HTTPS
reverse proxy in front of the controller. The controller_public_protocol
parameter is propagated to the subclasses public_protocol parameters.

Change-Id: I49c751a8b68a49e6f15c4e213c0ddbbec7076229