convert: refactor sink initialisation, to remove hardcoding of hg
We also introduce options to explicitly set the source and destination
repository types.
Improve testing of corner cases a little.
a -> a not a symlinka -> bNow at: base.patchapplying symlink.patchNow at: symlink.patcha -> b