allow @:generic on abstract member functions (closes #1793)
add haxe/Constraints.hx with ObjectMapKey (closes #1971)
add Function and FlatEnum constraint (closes #1826)
check enum flatness during type loading