Respect a requested PortalIP if possible

This will make DNS possible on a static IP.
Should we be more dogmatic about always return StatusReason types in REST functions?  E.g. the prior block will return I-have-no-idea-what-code.