Inline JS Math fields and methods.

Also add a few additional escaped words, so stuff like this will no
longer blow up after inlining:

    var JSON = 666;
    haxe.Json.parse("");

Closes #1666.
[cs] Override native properties
[cs] generate delegate abstract
[cs] delegates: a little cleanup - do not mess with @:coreType
[cs] WIP - delegates
[cs] delegates - WIP
[cs] Delegates working when convertion function can be avoided
[cs] Automtic conversion function when needed. Closes #916
[cs] WIP - replicate all delegate fields
[cs] revert
[cs] revert
[cs] Std.is on delegates
[cs] Added unchecked attributes support
[cs] Unchecked attributes on parameters
[cs] tests update and changes update
[cs] reapplied some commits from proletariatgames/haxe
[cs] from proletariatgames/haxe: fix crash when casting a null array
[cs] Fixed native properties on interfaces. Closes #2490
[java/cs] Fixed default values on constructors + non-hxgen classes. Closes #2570
[cs] Ensure that TConst is never viewed as Null<>; Force cast on complex blocks. Closes #2645