[java] Revamp the SafariDriver's internal networking

Fixes issue 5900
(I hope)
[SafariDriver] WebElement#getTagName() should return a lowercase string.
Update webdriverjs tests for Safari