With the "Promise-based" API from "wd", you can't actually handle
rejections. You can intercept them with .then(), but they still
register as "unhandled rejections" in Karma, and the error messages
are devoid of useful context.
This change uses the older callback-based model of "wd" instead, so
that we can make sure the error log contains enough context to pin
down issues to the specific Selenium node that failed.
With the "Promise-based" API from "wd", you can't actually handle rejections. You can intercept them with .then(), but they still register as "unhandled rejections" in Karma, and the error messages are devoid of useful context.
This change uses the older callback-based model of "wd" instead, so that we can make sure the error log contains enough context to pin down issues to the specific Selenium node that failed.
Closes #38