This class represents an attempt to overcome circular dependency issues for example when you have a structure something like this: trait NodeOrLeaf case class Node(child : NodeOrLeaf) case class Leaf(x : Int) currently this will lead to stack overflows if you try to define serialization for these classs between the ser for NodeOrLeaf and Node's .
Mix this into your package object, or whatever you import typically to provide some handy serclass specific implicits
This ser class is used when you want to support partially parsing a message.
This ser class is WRITE-ONLY (we need to use the type the system to encode this somehow)
Hints that can be used to adjust how backends encode data for performance reasons.