Implemented group indentation (Fixes #1)

Indentation of groups obeys the indent of the first row in the group.

Parser refactored to allow for token metadata
- Extracted token list appending into single method
- All tokens now include metadata (most blank)