Replace start '$' to '_'

This patch avoids "Field names starting with a dollar are not allowed" error.
Merge branch 'development' of github.com:HaxeFoundation/haxe into development
Enhance name handling for Java platform.

 * Classes with a encoded file name are supported, e.g. packageName/SingletonClass$.class, packageName/SingletonClass$$plus$.class
 * Methods start with a dollar are supported.
[java] Create aliases for simple imported inner classes
Replace "_" to "__" when escaping Java names.
Allow aliases for names that contain mutiple dollars.
Convert first character of class name to upper case
Tests for new name escaping
Merge branch 'development' of github.com:HaxeFoundation/haxe into strict-name-encoding
Merge branch 'development' of github.com:HaxeFoundation/haxe into strict-name-encoding
Allow '$' in method names
Merge branch 'development' of github.com:HaxeFoundation/haxe into strict-name-encoding
Merge pull request #3166 from Atry/strict-name-encoding

[java] Strict class name encoding