fix($httpBackend): fix HTTP PATCH requests in IE8

In Internet Explorer 8, the native XMLHttpRequest object does not allow the HTTP PATCH method. In order to accomplish a PATCH, you need to use the ActiveX object. Update the default XHR to use the ActiveX object when doing a PATCH in IE8. See the following for documentation:

* http://blogs.msdn.com/b/ieinternals/archive/2009/07/23/the-ie8-native-xmlhttprequest-object.aspx
* http://bugs.jquery.com/ticket/13240
* http://codepen.io/jeffschenck/full/yjczt (to quickly replicate the issue in IE8)

Discussed previously in #2518. I wanted to put together an example of how we could fix this, and Travis reports a green light on this branch. I'm not too familiar with the structure and internals of the project yet, though, so if you point me in the direction of how to add tests for HttpBackend (which appears to be mocked in testing) and any cleanup needed, I'm happy to work on it.