peer: use async datagram parsing & handling
tests: add raw packet & datagram
whitespace: vim reindent all