clean up
lots of minor changes and comments
Re-numbered option numbers to the latest draft (13)
reconstruct Communicator

Communicator can now be initialized by a Spec.
Messages will prefer the context communicator to the static default
communicator.
call SendMessageOverLowerLayer() rather than Accpet() or Reject() in lower layers
update endpoint and resource
make ObservingManager public and minor changes
add IShutdown to control UDPLayer
add Communicator factory methods
update server samples