Better test failure messages for unhandled errors

While working on #81 I managed to get the testsuite to run, I got a whole bunch of test failures, but the errors weren't particularly detailed:

```
>> FAIL: main - fxa client - #verifyEmail (4ms)
>> Error: assert.fail()
>> AssertionError: assert.fail()
>>     at /Users/glen/Development/Github/fxa-js-client/tests/lib/verifyCode.js:54:22
>>     at onSettled (/Users/glen/Development/Github/fxa-js-client/node_modules/p-promise/p.js:258:10)
>>     at onTick (/Users/glen/Development/Github/fxa-js-client/node_modules/p-promise/p.js:40:4)
>>     at process._tickCallback (node.js:415:13)
```

After this patch
```
FAIL: main - fxa client - #verifyEmail (3ms)
Error: expected [TypeError: Object [object Object] has no method 'update'] to be falsy
AssertionError: expected [TypeError: Object [object Object] has no method 'update'] to be falsy
```