Split client request header and body structs
Improve error handling when packing and unpacking messages
Update eos write test
Split header and body fields in client request structs and add `fuzzable` field