Reapplying the changes to parser. Made a change to the newToken() function to
make it _not_ be inlined. Was getting weird linker errors.