Initial public commit of SP.  This commit includes basic support for
Req & Rep, and some self testing.
Initial README.
Lint fixes thanks to golint.
More lint and go vet fixes.
Added IPC transport layer.
We don't need SetOption/GetOption here.
Added pub/xpub.
Added XSub/Sub.  Also, added an interface for SetOption, GetOption.
Note that none of that is tested yet.  Self tests still pending.
Note that PUB/SUB is added and YMMV.
Fixes Issue 1: Add support for Pub/Sub
Fixes Issue 7: Add (experimental) TLS transport

Substantial work.  It also cleans up a lot.  Much that was formerly "Public"
API is now "Private", making for much simpler documentation.  There is support
for SetConfig() and GetConfig() socket APIs, which allow configuration
directives like TLS configuration to be passed to a socket.
Also, we use this for PUB/SUB.  We've also adopted some more idiomatic
Go styles, and are using Factory methods to simplify dynamic handling
of protocols or transports that need Init to be applied.  (For example when
these keep local state.)
Various golint fixes.
Fixed PUB/SUB.  Verified working now.  Also added a self test for it.
Pub/Sub test less fragile, handles slow-start syndrome, slow clien receive.
Fixed panic in core buffering when too many messages received too quickly.
Update with actual state of project.  Include notes about TCP
and TLS.
Make the internals of "ConnPipe" private by renaming to "connPipe".
Initial swag at PAIR / XPAIR protocol.
Eliminate unnecessary SetCoreData/GetCoreData interfaces.
/coreSocket/socket/
Unify coreSocket and coreHandle into just socket.
Rename ProtocolHandle to ProtocolSocket
Cleaned up the Protocol interface, adding optional interfaces for SetOption
and GetOption, RecvHook and SendHook. This is more idiomatic Go, and its
nice that Protocols don't have to implement empty stubs.