overwrite inspect where appropriate

Errors that occur within promise chains can result in long pauses when
inspecting the error.
By overwriting inspect in key classes we improve performance and make
errors much more readable.