super cleanup
reimplemented timing out to match the spec
added logger
guarding against little-endian responses
removed logger, bumped version