Rewrote compiler to use code fragment trees, added more cmdline options, fixed token metadata