[cs/java] simplify abstract implementation output

closes #2337
- don't generate base class for KAbstractImpl
- don't generate reflection stuff for KAbstractImpl
- mark KAbstractImpl as @:final (should we do that on all platforms?)
respect boolean short-circuit when handling side-effects
consider field inits while inlining constructors (closes #2336)
translate macro return type from ExprOf to Expr as well (really closes #1804)
Merge pull request #2347 from nadako/1804_macro_return_exprof

translate macro return type from ExprOf to Expr as well (really closes #1804)
[cs] Don't add `#line default` when `-D real-position` is used
Merge pull request #2348 from nadako/syntax_cleanup

[cs] Don't add `#line default` when `-D real-position` is used
Merge pull request #2340 from nadako/2337_plain_abstract_impl

[cs/java] simplify abstract implementation output
hide filters.obj
add missing abstract cast check when typing iterators (closes #2345)
clean up abstract config implementation
ignore `else false` cases in check_local_vars_init to avoid problems with the side-effect handler
more improvements to the side-effect handler
document side-effect related functions
do not add abstract fields without expressions to field list and error accordingly (closes #2344)
Update README with latest release, nightlies and API docs

Updated stable release links to v3.0.1
Added link to automated dev builds
Changed API link to api.haxe.org
Fixed typo in Community section
Merge pull request #2352 from Herschel/development

Update README links with latest release, nightlies and API docs
this.matchSub should be this.match
Merge pull request #2353 from frabbit/patch-2

this.matchSub should be this.match
fix evaluation order of map_expr and map_expr_type and pray that nobody relied on the wrong order