Mark nullable fields in protocol
The protocol currently does not mark fields that are nullable. There is currently one place in the protocol that mentions that a field can be null in the description. It is not clear if there are other places where objects or strings can be null. For example, it is likely interface names can never be null, but this is not required by the protocol.