NewBinaryEncoding returns a BinaryEncoding. The given c Constructor can be nil. In that case, the BinaryEncoding MUST not be used to Read() any structure can contains any interface fields implementing the Marshalling interface, because BinaryEncoding won't be able to create the concrete type of the
(c Constructor)