Added length to documents.

TODO:

 - [ ] figure out why this conflicts with tree lengths
Added failing tests.
Merge remote-tracking branch 'origin/master' into document-length
Added integration tests for importing from files.
Added bool definition for mock objects
Document needed bool

the len(tree) function checks to make sure that there is a root document
in the tree, and if the document had no associated requirements, it was
returning false to bool(document) even though it was a valid document.

The document class should be considered valid if it is initialized
correctly, so the __bool__ should always return true
Fixed broken tests.
Made 'all' a reserved word.
Updated changes.
Merged 'master' into branch.
Merge pull request #80 from jacebrowning/cli-path-exception

Exception on `doorstop publish PREFIX DIRPATH`.
Added link to IPython Notebook demo.
Merge branch 'master' into import-export
Added stub function.
Added a couple comments.
Merge pull request #78 from jacebrowning/document-length

Add length to Documents.
Everything is good except for links.

For some reason the tests are failing when it comes to the links. I'm
not sure how I'm supposed to pass link information, probably as a
list...
Initial pass completed. links are working.

Messy version of import done.
Renaming and code consolidating

Grouped the if i: blocks together.
Renamed so I don't have so many 'attribute' variables.
Fixed error.

Tests caught this.