implement fix in `parse()` for unstable sort in various browsers.

Since `Array.prototype.sort` is unstable in various browsers (Chrome,
Android, Opera < 10, Firefox < 3, etc.), children arrays were being
reordered with the previous implementation.

This fix bypasses Array.sort entirely if no comparator is defined,
which is its default behavior.

See: http://code.google.com/p/v8/issues/detail?id=90
See also: http://ofb.net/~sethml/is-sort-stable.html
update README to include test running instructions
updates tests to illustrate `Array.sort` instability in `parse()`

See commit 33334928689e9cbed7aab9d4a45618db3c084a93 for description of
the problem.
fix unsable sort test

The array required 11 elements to illustrate instability.
run dist.sh to update ./*.js
Fix the other instance of Array.sort being used improperly.

I missed this last time.
Fix jshint errors.
Add a test to check the indexes of node and model children are in sync.
Add a test to check if addChild throws and error when not called with Node instances.