Line information + UMD

This pull request is mostly about adding line information to the tokenizer,
which in turn adds it to the parser.

It is opt-in, as in, it only appears with {loc:true} set in the options.
(I plan to use this in my CSS autocompletion project, https://github.com/espadrine/aulx)

I also added a commit to use UMD, in order to:
1. avoid leaking so many variables in the global object
2. support not only node and browser JS, but also AMD

The tests still pass fine.