Addresses #499: Add :text/:binary mode function to `Transport.Serializer` behaviour

Addresses issue #499.

Also added documentation and an example of using a custom serializer to the README.