Added unit tests
parser take 1
working parser