Code review updates

These are updates based on your code review so far.  I put them in a branch off of channelwad.
Timeout is now passed in at construction time.