- added new exception classes for handling drawing attention to lower
  level networking, programming, and argument errors
- added new private method for handling socket errors, to DRY