According to the Protractor website (http://www.protractortest.org/#/infrastructure), Protractor utilizes Selenium for browser automation. However, when browsing through the Grunt website (http://gruntjs.com/), it's mentioned that Grunt is also used for automation purposes. This raises the question of how these two tools differ and complement each other. In essence, I'm curious about why Grunt would be necessary if Protractor is already being used.