Revert "Generalize has_json_member"

This reverts commit fca30a88ac6ba40d82e5d0410f50df9bd7a656f7.
Add test case for non-class type
Add is_class and fix has_json_member