e2e: promise handling (cuurrentPage -> self, use post/invoke)

For all functions/properties on PageBase, return "self" if there is no
particular element relevant to return. This simplifies writing chained
promises.

Use the Q invoke and post functions where we can to avoid more
complicated binding code.

Also fix errors where our bindings were presently "off".