First draft of JavaScript.

Converting by hand from Streamlined CoffeeScript to JavaScript. At this
commit the file `lib/enclosed.js` will compile with `node`.

No tests are passing. Not that I've run them. They all reference a
module that has been deleted.

I've removed the `Cakefile` and the dependency on Twinkie.

Strata is now straddling the fence between going all objets and going
all closures. At this point, I'm considering implementing two
implementations, for the sake of my education. It might take less time
than sitting here wringing my hands about it.

This is why I've named the library `lib/enclosed.js` for now. There will
be a `lib/objectified.js`.

I've been picking at a test at JSFiddle, trying to sort out the state of
closures versus prototypes in the latest versions of V8 and
Spidermonkey. I kept adding tests and eventually some examples of the
patterns I've explored in JavaScript Strata started to occur to me. That
is, I started out [comparing `Array.forEach` to
`for`](http://jsperf.com/for-versus-foreach), then thought about how to
use this use case to explore the closure pattern I'm defaulting to in my
JavaScript port.

The result is that wrapping operations in closures during a function
call the way you would with any of the popular async flow libraries
comes with a performance penalty. An object-oriented implementation
could be made to run faster.

The most recent article of note on the matter is a Podcast from Brendan
Eich entitled [Closure Versus Prototypal Pattern
Deathmatch](http://www.aminutewithbrendan.com/pages/20110216). In it he
advises, as people often do, to optimized last, not to worry about it,
oh, but closures are slow and fat.

There is an optimization in Spidermokey that saves memory by resuing
closures. If someone compares the closures, they are copied at the last
minute, so that they are not equal, as they should not be equal, because
they are supposed to be unique objects.

That they are all supposed to exist as objects is probably a reason to
worry about performance and memory. Creating objects is cheaper than
creating functions. Objects can be cached an reinitialized, closures
cannot.
Initial ported test.

Create an initial port of an initial test to JavaScript.
Convert `t/basics/open.t`.

Converted and passing. The `stats` function should be an accessor.
Perhaps there ought to be accessors for `size` and `nextAddress`, but if
we're going to inspect internal state, then an object with copied
properties probably works. It's a fiddly enough to indicate that it's
not core to the interface.

Updated Proof to 0.0.7.
DRY up first test.

Upgraded Proof to 0.0.9 which allows nested control flow. The first test
was repeating itself, requesting the same objects and function in each
step of the series of set functions. With nested control flow, the
commonly used objects and variables are specified in the outer most
function, and the inner functions only request the properties that they
alone need.

Also, Proof 0.0.9 detects variables that leak into the global namespace,
so I cleaned up some leaky variables.
CoffeeScript pattern tests passing.

Using the CoffeeScript tests to verify the library, before converting
tests themselves to JavaScript.
All basic, non-balancing tests pass.
Got basic split to pass.

Created `gather`, a function to gather up records, something I do in
most of the tests going forward, the split tests and merge tests.
All basic tests converted to JavaScript.

All of the basic tests have been converted to JavaScript.
Delete tests converted to JavaScript.

The one delete test converted without requiring any changes to Strata
itself.
Renamed `lib/enclosed.js` to `index.js`.

If I want to persue the objectified pattern, I know where to find it. No
need creating a taxonomy that implies missing pieces.
Convert all insert and iterate tests.

Converted all insert and iterate tests. Began to convert merge tests.
All in JavaScript. All tests passing.

Long road to get here. Not much more to say. Onward.
Merge branch `javascript` into `travis-ci`.

Conflicts:
	package.json