Port range support in the firewaller.

The firewaller watches the openedPorts collection, the ports field on units is no longer updated.

This work fixes https://bugs.launchpad.net/juju-core/+bug/1337817
this has a nasty look of something that discards errors. I know it's pre-existing, but please convert these to watcher.Stops (that accept a tomb to take down as well)