super useful type validation for use with su-define-object