SLP requires us to encode Scripts differently than CScript currently does.
SLP forbids encoding the empty bytestring with OP_0, but CScript encodes it this way. Therefore, we add SlpScript, which encodes b"" as b"\x4c\x00".
We rename __coerce_instance to _coerce_instance, as it prevents us from overriding the function. __prefix is intended to have a "private" scope, and _prefix a "protected" scope, and to override a method in a subclass we need the latter.