Temp checkin of bad compiler
Rest of stuff
Revert "Temp checkin of bad compiler"

This reverts commit 8d706379b4594c9f9e5718a92888e5e39882592e.
Fix broken tests
Revert "Revert "Temp checkin of bad compiler""

This reverts commit 20abbf9c899ec79f3dd9d4988a847d67a59fb77d.
Refactor jsni with extension methods to be more readable and friendly