Add nested buckets.

This commit adds the ability to create buckets inside of other buckets.
It also replaces the buckets page with a root bucket.

Fixes #56.
Add import/export to CLI.

This commit adds two new commands:

    bolt import --input INPUT PATH
    bolt export PATH

This exports the database in a simple, nested, key/value JSON document.
Each node in the document has a "key", a "value", and an optional "type".
The key and value fields are both base64 encoded.
Merge pull request #128 from benbjohnson/import-export

Add import/export to CLI.
Merge branch 'master' into nested-keys

Conflicts:
	db_test.go
	tx_test.go
Upgrade import/export to use nested buckets.
Merge pull request #127 from benbjohnson/nested-keys

Add nested buckets.
Fix race detector CI.
Return bucket from CreateBucket() functions.

This commit changes the API for:

    Tx.CreateBucket()
    Tx.CreateBucketIfNotExists()
    Bucket.CreateBucket()
    Bucket.CreateBucketIfNotExists()

These functions now return the *Bucket and error instead of just the error.
Merge pull request #130 from benbjohnson/create-bucket-api

Return bucket from CreateBucket() functions.
first draft
minor cleanup
cleanup
fix up the C bits to compile
build c/cursor and running tests