Refactor relationship between controller and response receiver.

This allows receiving multiple types of responses from the same command,
e.g. an ACK for a diagnostic request and the first response to that diag
request from the vehicle.
Only force JSON to utf8, not protobufs.
Make payload format work if it was already in the desired format.
Add missing decoder for protobuf af bypass command responses.
Add binary command for controling predefined OBD-II requests.