
Todo:

* Deal with known bugs (see bugs.txt).
* Clean up code.
  See the comments at the top of samclasses.py.
* Use a logger framework (perhaps Python module logging).
* Deal with FIXME comments.
* Unit tests for close then do something errors.
  Try closing a stream at one end, and make sure the other
  end gets all the data sent before closing.
* Make an event-based socket class.
  (eg asyncore).
