reader/writer: refactor configuration
command: refactor to implement WriteTo interface; drop binary.Write
conn/reader/writer: refactor write buffering; switch to WriteCommand
reader/conn: update comments; go fmt
writer: simplify public error handling