Capture stack traces via synthesized errors when required.

When captureError() is called without an Error object, synthesize
one so we can grab an approximate stack trace.
Fix tests to account for reversed stack trace (#64)
Merge pull request #87 from rcoup/captureError-stack

Capture stack traces when captureError() is called without an Error object