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:
``` javascript
beforeEach(function(){
  this.addMatchers(function(){
    return {
      toBeDisplayed: function(){
        return this.actual.isDisplayed();
      }
    };
  });
});

it('should be displayed', function(){
  expect(element(...)).toBeDisplayed();
});
```