[wip] 16494 Protractor (JavaScript e2e) tests

:warning: **Includes commits from #2067. Please review, merge first.**

https://www.openproject.org/work_packages/16494
@hschink any idea why these directives were placed in a different module?