How do you achieve parallel test execution in TestNG, and how do you handle thread safety for your WebDriver instances?