Bug 844900 - Replace SMS "Desktop Mock" with mozSms mock

Mock out the native mozSms API in environments where it is not defined
(e.g. FireFox and B2G-desktop). This promotes code re-use across
environments. This work introduces message deletion in desktop
environments by mocking `mozSms.delete`.

Reference global variables to enable optional control of simulation
behavior.

Update the application's usage of the mocked `SMSRequest` object to
properly reference the `error.name` property defined on `DomRequest`
objects.

r=fabrice