[major] Migrated the parser to it's own module.