Lots of work toward SocketMessage and SocketIO semantics.

  - core/base/base.h
      - Don't clear errno; unreliable.
      - Re-org some CONSTRUCTOR/DESTRUCTOR/ASSINGMENT_OPERATOR #defines.

  - SystemError
      - clear(),inProgress()

  - ByteRange
      - ssize_t can be used to slice

  - SocketDescriptor
      - now a more normal class (no dup(2) stuff)
      - areKeepAlivesEnabled -> hasKeepAlivesEnabled
      - fold SocketOptions into SocketDescriptor

  - SocketMessage implementation

  - SocketIO
      - no longer static; now holds a SocketDescriptor
      - SocketIO::createSocket() sets a whole bunch of "good" options.
      - try to make SO_NOSIGNAL and MSG_NOSIGNAL useful,
        but not too ugly

  - experimental/httproxy
      - std::list<QueuedData>