Suspend throwing the exception while working on US2773.
While it is highly unlikely that 'list-ports' will return a line that yields a false positive, it is probably a good idea to defend against that possibility.
Suppress warnings for unbalanced right brace '}'.
On the Mac, port forwarding is not allowed on local machine except for the loopback address. https://access.redhat.com/knowledge/docs/en-US/OpenShift/2.0/html/User_Guide/sect-OpenShift-User_Guide-Application_Maintenance_Monitoring_and_Troubleshooting-Performing_Application_Maintenance_from_Your_Workstation.html#sect-OpenShift-User_Guide-Port_Forwarding

Detect the platform and provide a reasonable workaround out of the box.
Move 'mac?' to Helpers.
Introduce RHC::Commands::ForwardingSpec to simply port forwarding handling.
If a local port is bound already (which is the case for a scaled app), try a different port.
* Old code is still left behind, and some cleanup is necessary.
Provide means of grouping ForwardingSpecs easily. Currently, bound ones sort before unbounded one, and then sorted according to the service name, remote host name, and port.
These port forwarding specs need to be rewritten.
#inspect already contains the text "forwarding"
Tweak messages on non-Mac platforms
Change colors so messages stand out.
Fix description
Use info on STDERR to build port forwarding specs.

Also, the port forwarding list is dependent on the platform, so add that
helper for the specs, too.
All specs pass now.
Remove specs we do not need
We no longer need this exception
Not using this to build the error messages
Almost 100% code coverage
Fix the expected message on non-Macs
Exit with error code, yes.