Fixed cast for 32-bit windows.
Only update rebalance time if nodes are rebalanced.

This commit changes TxStats.RebalanceTime to only update if there are nodes that have been
rebalanced. Previously, the RebalanceTime would include a small amount of time to check if
there were nodes to rebalance but this is confusing to users and not terribly helpful.
Merge pull request #224 from benbjohnson/rebalance-time

Only update rebalance time if nodes are rebalanced
Add DB.NoSync option for bulk loading.

This commit adds the DB.NoSync flag to skip fsync() calls on each commit. This should only
be used for bulk loading as it can corrupt your database in the event of a system failure.

Initial tests show it can provide a 2x speed up for sequential inserts.
Merge pull request #225 from benbjohnson/no-sync

Add DB.NoSync option for bulk loading.
Merge pull request #221 from cmars/win32

Fixed cast for 32-bit windows.
Optimize large append.

This commit fixes an issue where large nodes would take up most of
the insert time because the entire node size would be calculated to
check if it could fit in a page or not. This changes the behavior
so that a node's size is only calculated up to the size it needs to
check and then returns.
Merge pull request #226 from benbjohnson/optimize-large-append

Optimize large append.
Fix double spill.

This fixes an issue where split nodes can be double spilled. This is typically
not noticable but it can have large effects when bulk inserting as double
spilled nodes will get added to the freelist which will grow quickly.
Merge pull request #227 from benbjohnson/fix-double-spill

Fix double spill
Fix root split on very large append.

This commit fixes a bug where a root split on a very large insert would
cause an overflow of the root node. The problem was that the new root
was not split when it was created so a new root with more than 64K child
nodes would overflow the page.count (uint16).
Merge pull request #228 from benbjohnson/fix-large-append

Fix root split on very large append.
Change fill percent to be per-bucket.

This commit moves the DB.FillPercent field to Bucket.FillPercent. This
allows the fill percentage to be specified per-bucket, per-tx. This
value is not persisted and should be set whenever using it.
Add FillPercent documentation.
Merge pull request #229 from benbjohnson/bucket-fill-percent

Change fill percent to be per-bucket.
README
Merge pull request #230 from benbjohnson/doc

Documentation!
Remove withTempPath() helper.
Remove wrapping test closures.
Move tests to a test package.