Added a parser.  It's fairly messy.