Build Oasis.js.
Drop polyglot.

Previously Oasis sandboxes could be defined entirely in JavaScript, even when
loaded in the iframe adapter.  This was convenient for certain potential
Conductor.js cases but led to a fair bit of complexity.

The type of a sandbox is now implied by the adapter that is used to load it.
For the iframe_adapter this means all sandboxes now are of type html, so the
user is responsible for loading oasis.

This also means that there is no longer any sandbox bootstrapping, so for the
web worker adapter, users must now load Oasis, their own dependencies and their
sandbox.  To load a previous web worker sandbox `wwsandbox.js` something like
the following is now required:

```js
importScripts('oasis.js');
importScripts('wwsandbox.js');
```

see https://gist.github.com/hjdivad/45fa4be9f5aaf56586ea
Merge pull request #72 from tildeio/remove_polyglot

Drop polyglot.
cleanup TODO.
Sandboxes can reconnect.

This is only really useful for sandboxes using the iframe adapter.  The
canonical use case is for sandboxes that navigate.

This adds some complications for the container code, namely:

1.  If using the service API, it's important not to save ports outside of the
    service, or references to the service itself.  Using
    `sandbox.capabilities[name].send` is the preferred approach.
2.  If using the ports API, it is necessary to reconnect to ports on the
    container side after a reconnection, as the port object is not the same.
    This requirement may be dropped in the future.
Merge pull request #74 from tildeio/reconnect

Sandboxes can reconnect.
Reject handlers with no consumer when connecting before receiving ports.

When Oasis and the card are both loaded as a file in the sandbox, it is
possible that the card tries to connect the consumers before the ports are
actually received. In that case, we still need to reject capabilities
that have no corresponding consumers.

With the polyglot approach, ports were sent with the card's url in the
initialization message. Therefore the capabilities in the sandbox were
registered before the card actually loads and connects the ports.
Cleanup todo.
Add dates to History.
Removed `dependencies` feature.

This was only supported when oasis brought its own bootstrap, and is no longer
relevant.
Reconnect now supports 'none', 'verify' and 'any'.

Reconnection exists to support applications that navigate (ie non-single page
apps).  Sandboxes that navigate should simply load `oasis` and call
`oasis.connect`, just as if it were an initial load.

Configure oasis-wide reconnection with:

```js
oasis.configure('reconnect', 'verify');
```

Or override with a sandbox-specific option:

```js
oasis.createSandbox({
  url: sandboxURL,
  reconnect: 'any'
});
```

The different reconnection options are:

'none' - sandboxes may not reconnect.
'verify' - sandboxes may only reconnect if `allowSameOrigin` is `true` and the
  origin the sandbox navigates to is the same as the original sandbox URL.
'any' - sandboxes will always reconnect.  This is primarily intended to be used
  for null origin sandboxes.  Great care should be taken when using this
  setting: it is advanced usage and is not recommended unless you clearly
  understand the security implications.
Merge pull request #75 from tildeio/reconnect-verify-origin

Reconnect now supports 'none', 'verify' and 'any'.
Fix samples so they request oasis.js files correctly
Merge pull request #77 from AdamFerguson/fix-samples

Fix samples so they request oasis.js files correctly