feat(jasminewd): allow custom matchers to return promises

Allow custom jasmine matchers to return a promise and match against resolution of the promise.

Allows matchers like the following to be written:
    beforeEach(function(){
      this.addMatchers(function(){
        return {
          toBeDisplayed: function(){
            return this.actual.isDisplayed();
          }
        };
      });
    });

it('should be displayed', function(){
  expect(element(...)).toBeDisplayed();
});