Change repoformat to allow some level of shallow cloning
Shallow cloning doesn't work currently for two reasons:
- Package data is actually on the branches, and only in the main history chain where they were tagged.
- Many packages, like 'time', only work with packages several versions back.
a shorted list of parents referencing packages in the index could work for the first, but is quite large and removes most benefits of a shallow clone. There is a hackage feature - preferred-versions - that might work though. If index entries parented all the prefered package versions in commit hash sorted order it might be operable. A survey needs to be done of the information content of preferred versions and the impact of this format on repository size.