refactor(OOD): add AbstractParserFactory boilerplate