fix(toJson): add ability to suppress exceptions

This is a pull request prepared for issue #9838 

I have implemented solution discussed in #9838 and applied it in places that I was sure of.
There are several places left where toJson is used but I wasn't certain if exceptions should be suppressed there:

https://github.com/angular/angular.js/blob/master/src/ng/http.js#L135
https://github.com/angular/angular.js/blob/master/src/ng/http.js#L1098
https://github.com/angular/angular.js/blob/master/src/ng/interpolate.js#L257
https://github.com/angular/angular.js/blob/master/src/ng/filter/filters.js#L524
https://github.com/angular/angular.js/blob/master/src/ngCookies/cookies.js#L181
https://github.com/angular/angular.js/blob/master/src/ngMock/angular-mocks.js#L871
https://github.com/angular/angular.js/blob/master/src/ngMock/angular-mocks.js#L885
https://github.com/angular/angular.js/blob/master/src/ngMock/angular-mocks.js#L1158
https://github.com/angular/angular.js/blob/master/src/ngMock/angular-mocks.js#L1637
https://github.com/angular/angular.js/blob/master/src/ngScenario/Scenario.js#L80
https://github.com/angular/angular.js/blob/master/src/ngScenario/Scenario.js#L89
https://github.com/angular/angular.js/blob/master/src/ngScenario/Scenario.js#L298
https://github.com/angular/angular.js/blob/master/src/ngScenario/output/Json.js#L8