Serialise in codecs
Instead take explicit encoders and decoders. This will be needed for Byron since we don’t have those instances there (instead we have functions that require additional context).
This also updates the Byron proxy. This could mean that we don’t need the wrappers anymore, but I’ll leave that to Alex.