Add ErrorResponse parsing
Create a type alias for OIDs
Add some decoding utility methods
Fix BackendKeyData test
Move encoding to separate package

It's not needed in the core functionality, since
we no longer decode any data rows automagically.
Renamed (Client, Server) => (Frontend, Backend)