Rewrite test without continuation-passing style

https://github.com/angular/protractor/blob/master/docs/control-flow.md
says that Selenium maintains a queue of pending promises, and waits for
each previous promise to be fulfilled before running the next one. This
means, in essence, that it's unnecessary to call then() in test code,
because each step of the test returns a promise, and Selenium keeps
track of the order of those promises and makes sure they're executed in
the correct order. So the whole complex continuation-passing style I
initially wrote this test in is quite unnecessary, and I can write it in
a much simpler style.