fix(packets): make nullable wrapper a class
feat(packets): add nullable wrapper to represent a compoud type that may be null as a whole