More work on parsing refactoring