Commit.PortablePortable form of a commit implementation that can be constructed from a concrete representation and used in computing hashes. Conceptually, a Commit.Portable.t is a Commit.t in which all internal keys have been replaced with the hashes of the values they point to.
As with Node.Portable, computations over portable values must commute with those over ts.