Made a common method captureScreenshot in WebdriverUtils which based on framework will decide to use the provider class to use for further execution.
Shifted few common methods like percyScreenshotBegin, percyScreenshotEnd, browserstackExecutor in genericProvider as it is being used as base class.
Also in constructor of these classes instead of taking each argument separately taking it as hash and assigning it to instance of object so that we can directly pass from child class without need to add every arguments from every child class.
For Playwright Provider we needed following things to be passed for execution
Changes: