Moved parser out to a utility package since it is quite general.
Finish moving parser, fix up license, catch another place we should use this.