parser specs with a bit of refactoring--it's in transition atm