Allow functions to be passed to executeAsync

Fixes #92.
Use Suite#hasParent instead of Suite#parent

This is needed inside ClientSuite since Suite#parent is not
serialized when using the proxy so tests are incorrectly doubled
up inside the ClientSuite suite.

Fixes #86.
Run all parent suite beforeEach/afterEach when running a test

Fixes #67
Update Travis configuration for PRs

This increases the risk that someone totally breaks Intern and makes
bad tests pass, but decreases the risk that someone provides a PR
and the Travis run does not show the correct changes once the code
is actually committed, which is a more common problem right now.
Use the correct relative path

Follow-up to previous dumb commit.
Use the fulfilled value from a chained promise

dojo/Deferred#resolve does not unwrap promises so we need to resolve
using the fulfilled value rather than the promise itself.

Fixes #93.
Add instrumentation to client.js when running in Node.js

Fixes #5.
Use the native error object if it exists

This improves error reporting in modern browsers.
See http://www.whatwg.org/specs/web-apps/current-work/multipage/webappapis.html
Pass absolute paths to instrumenter

Fixes #95.
Add detailed reporting to runner.js

Fixes #96.
Update wd to 0.2.0

Removes no longer needed code for passing functions to execute/eval.
Adds a test to check that nodes can be passed as arguments to remote functions
and still used as a return value.
Fix code convention violation
Fix running tests against a stand-alone Sauce Labs tunnel
Update environments for self-test
Update environments in example config
Remove zlib compression from proxy

This feature should not be necessary for testing and is a
potential point of failure since it was not implemented in a
very compliant manner (data always sent compressed even if
not supported by the target environment, for instance).
Refs #4.
Make reporter start and stop methods symmetrical

Fixes #74
Fix whitespace
Update wd to latest version
Suffix toUrl calls so they are not replaced with 'intern/main'

This is due to differences in the way toUrl works in Dojo vs RequireJS