formatting
refactor the parsing engine to split out the responsibilities making it more easy to test and extend. This should allow development for more edge case scenarios and create a more powerful and simplified engine
refactor parsing grouper class
refactor internal namespaces
clean usings