Shared backend

Can compile hello world, can compile patterns and tailrec methods. Can compile array operations. Can compile both classes and objects.
I believe that was in a separate PR, right?