beginnings of a working parser