Shared backend

Can compile hello world, can compile patterns and tailrec methods. Can compile array operations. Can compile both classes and objects.
I've intentionally moved it here to have isAnonymous*** in same location. What's your feeling about where those methods should belong to? they both apply only to SymDenotations and thus could either be here or in SymUtils.