Index.xs: Allow add() to take an Index::Entry object
TODO: Index.xs: Added additional Index methods

checkout()
entries()
add_conflict()
remove_conflict()

Split write_tree() into separate commit
Index.xs: Index::Entry's should be tied to the repository, not the Index
Commit.xs: Cleanup
Commit.xs: Added merge()
Raw.xs: Added additional checkout options
TODO: Updated documentation (Split commits)
Changes: update