Started building the alternate Parse() method that uses the new object.
Some unit tests have been updated to use the new object.
Refactored more unit tests.
Removed old Parse method and fixed up the rest of the unit tests.