* validate utf8 at the message level * move utf-8 validation to message * rename `recv` to `recvMsg` * add partial frame validation tests * use `recvMsg` instead of `recv`