Minor improvements for locationData of tokens and some clean up.

* INDENT tokens span only the whitespace in front of (indented) code.
* Generated `{` for braceless object notation gets location from the first key.
* Small fix and cleanup.

Why:
* Fixes locationData of object and block AST nodes containing preceding blank lines or comments.
* Allows for better error reporting for unexpected INDENT.