SP-1558: Fix SQL script parsing with semicolon in string literal

In order to make mocking/testing easier, can we change this to a Singleton pattern, keeping the private constructor but calling a getInstance() method and making all other methods members instead of static?