Fix pull multiple connections.
* bzrlib/builtins.py:
(cmd_pull.run): If 'location' wasn't a bundle, the transport may
be reused.
* bzrlib/branch.py:
(Branch.open_from_transport): New method.
* bzrlib/bundle/__init__.py:
(read_mergeable_from_transport): New method.