Extract constant for not-null-or-empty message
Refactor basic type(mapping) class names -> simple/primitive
boolean isEmpty()
getFirstEntry() and getLastEntry()
Move heads from VersionGraph to VersionNode. Remove VersionNode.parents.