Update javadoc for sendMessage()

Its behavior has changed: sendMessage() no longer attempts to write
data out on the calling thread, because this could cause issues in
multithreaded use cases.
Explain "online" flag
Check for null selector before creating
Map ports to channels
shutdown() for specific ports
Implement listen with port parameter
thread starter
shutdown() should close all channels
Rename port shutdown to close()