Partly-complete implementation of DescribeTypeJSON

Includes support for interfaces and variables, accessors and some fields of methods, including their associated metadata.

Doesn't include support for class-level interfaces and inherited properties.