parser: add basic infrastucture for modular parsers