Parser

It builds and passes what tests we've got, and considering master isn't quite usable yet, may as well move this there.