Revert "bad merge diffs"

This reverts commit 7946be9f9b75fa43e700f519cb0caa07a352aac9.
Revert "one weird hack to maybe have better messages for nonexistent packages"

This reverts commit 75df1097e06dc7faed95e3f83d357ff3de63872f.
track ancestry as chain, not just root

switch constraintAncestor to be a nested mori.hash_map/mori.list