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
I have not changed the behavior, but we can do the split on the last ':' instead if that would fix things for the future.