Parser

Cleaner parser commits.

The first two commits could easily be squashed into parser commit or just pushed to master straight away.

Commits  	f22ed39 and 02d5d14 could maybe be merged, I can't think of a situation when we would like one but not the other.

The bold and header features are on a Fuuzetsu:features branch and that's here I'll be pushing anything new I create.