added untested support for // comments
errors now pointed to correctly by carat, tabs are treated as spaces