Refactoring of parser. Split out specific element parsers to new class