Fix for Angular 1.3: xhr.onreadystatechange -> xhr.onload

Hi,

When I upload file using angular 1.3.0 in ie9, the promise never resolve. 
After tracing code, I found out that `xhr.onreadystatechange` method was substituted by `xhr.onload` method in angular 1.3. 
ref: angular issue https://github.com/angular/angular.js/pull/9329

Somehow the onload method was called twice, and `xhr` became `undefined` at second time.
To fix that, I surround try-catch block on onload method to prevent stop processing. (Please let me know if there is better way to solve this problem.)
In angular 1.2, `onreadystatechange` method already fix xhr issue https://github.com/angular/angular.js/issues/5426