more listmaster-required changes; heavy rewrites to cmd
adds QNUM response
adds skip_space, skip_nonspace; macrofies free_if_not_null to prevent needing to typecast