Socket :: throwError() made instance method
Socket :: added getError() to complement throwError()
SocketError :: special codes
Added Socket\Stream
The term "wrapper" is ambiguous when talking about sockets, using the term "facade" instead.