+# classify returns an info hash like this
+# CommitId => $objid
+# Hdr => # commit headers, including 1 final newline
+# Msg => # commit message (so one newline is dropped)
+# Tree => $treeobjid
+# Type => (see below)
+# Parents = [ {
+# Ix => $index # ie 0, 1, 2, ...
+# CommitId
+# Differs => return value from get_differs
+# IsOrigin
+# IsDggitImport => 'orig' 'tarball' 'unpatched' 'package' (as from dgit)
+# } ...]
+# NewMsg => # commit message, but with any [dgit import ...] edited
+# # to say "[was: ...]"
+#
+# Types:
+# Packaging
+# Upstream
+# AddPatches
+# Mixed
+# Unknown
+#
+# Pseudomerge
+# has additional entres in classification result
+# Overwritten = [ subset of Parents ]
+# Contributor = $the_remaining_Parent
+#
+# DgitImportUnpatched
+# has additional entry in classification result
+# OrigParents = [ subset of Parents ]
+#
+# BreakwaterUpstreamMerge
+# has additional entry in classification result
+# OrigParents = [ subset of Parents ]
+