Applying some SOLID to parser logic
Reducing parser complexity