Un-deprecate Encoder and Decoder, make them extensible, make them injectable to the builder.
This allows people to do custom handling for corner cases.