Chain::build_tree only creates blobs. It should support inserting entries that reference existing git objects (blobs, trees, commits) with an explicit file mode, analogous to Mutation::Pin added to git-ledger in #12.
When that is implemented, consider whether Mutation and FileMode should be extracted into a shared crate rather than duplicated.