Add emission of 'name' and 'qName' metadata for every class

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>
Adjusted tests for 'name' and 'qName' metadata

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>
FLEX-33903 emit class coercions as 'as()' method calls, with a third argument to force an exception to be thrown is the type check fails

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>
Change tests for new type coercion using 'as()'

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>
Correct emission of 'Metadata' JSDoc

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>
The 'AddEventListener' method is marked 'deprecated' in the goog library, so the compiler complains we use it. This makes it ignore those warnings.

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>
We want the 'goog.require' statements in the top most file possible. The prior recursion caused it to sometimes be included in the bottom most file. 'Unwinding' the recursion a bit now results in proper emission.

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>
Changed tests to match the new 'Metadata' JSDoc header

Signed-off-by: Erik de Bruin <erik@ixsoftware.nl>