make host+port more explicit

- document the behavior for node host/port initialization
- throw exception if settings make no sense
- fixes announcement for nodes without host/port defaults
- makes code clearer as to when host vs. host+port are used
add support for ipv6 hostnames
use guava methods instead
Merge pull request #917 from metamx/explicit-host-port

make host+port more explicit + ipv6 support