Generic purpose parser able to deal with custom grammars and providing read/write features.