Support for same port on multiple interfaces

This issue is documented in dotcloud/docker#2644.

Previously the network manager only held a single PortMapper class for all
interfaces, which caused it to incorrectly say that the port was already in use
when attempting to map the same port to several different interfaces. I fixed
this by allocating a new PortMapper for each host ip in use.