pull -r: pass the revisions as the heads argument of findincoming
This can make a hg pull -r faster if the remote repo has many heads,
and fixes an "abort: received changelog group is empty".
% file replaced with directory
adding a
% should fail - would corrupt dirstate
abort: file named 'a' already in dirstate
% directory replaced with file
adding a/a
% should fail - would corrupt dirstate
abort: directory named 'a' already in dirstate
% directory replaced with file
adding b/c/d
% should fail - would corrupt dirstate
abort: directory named 'b' already in dirstate