Remove regexes for examining class definition

Regex can be fragile and we have the AST already. Examine for
properties.

The removal of "requires" and "uses" replaces the properties with an
empty array instead of completely removing them now due to being at the
property level.

The motivation for this was a failing `requires` because there was a space between the property name and the colon.