pull: add source information to the transaction
The source information can, should be applied once when opening the transaction
for the pull. This will lets element processed within a bundle2 be aware of them
and open the door to running a set of hooks when closing this pull transaction.
This is similar to what is done in server's unbundle call.
To run the tests, do:
cd tests/
python run-tests.py
See http://mercurial.selenic.com/wiki/WritingTests for
more information on writing tests.