IPs/Ports are unique to a pool when making address assignments

https://jira.zenoss.com/browse/CC-451
https://jira.zenoss.com/browse/CC-468
https://jira.zenoss.com/browse/CC-467

* Added searching for address assignments by port (many), and host/port (unique)
* Added a search to check if a virtual ip exists for a particular pool
* All IPs (virtual and static) must be unique to the pool
* Services can share ports with other services, though those services cannot share the same IP
* Fixed race condition with deleting virtual ips from zookeeper