make sure we keep the specific iterator type for inlining purposes
Merge pull request #2122 from dpeek/no-undefined-window-check

Don't check for undefined window in js.Browser (browsers have windows)
remove EUntyped from trace typing (closes #2128)
add Lambda.find
add TypeTools.findField
add TypeTools.applyTypeParameters
add MacroStringTools.toDotPath
add TypeTools.unify
add haxe.macro.Build.forwardAbstractFields
improve abstract meta handling
allow @:expose(field names) on abstracts
fixed using/abstract creating extra closures with iterator (closed #2129)
move add_feature to DCE (closes #2129)
use abstract implementation fields only in left-mode when detecting operator overloads (closes #2130)
Ensure that TField with lhs as an int/float is generated like
(number).field instead of the invalid JS number.field
Added back in necessary code to permit Reflection on Math, moving
back to using only std/Math instead of js specific file.
sidestep DCE feature definition issue
fixed issue with compiler cache and Context.defineType
added @:dce to force dce even in "std" mode. have it work on abstract implementation as well
fixed issue with "macro class" reification + display mode