Currently we have one single interface for all matchers. This causes the following to __not__ fail: ```ts expect($('foobar')).toHaveUrl('...') ``` We should create browser, element and mock matchers to be more explicit about the available matchers based on provided object.