Create a new unnamed remote
Get the information for a particular remote
Get the remote's name
Get the remote's url
Get the fetch refspec
Get the push refspec
Open a connection to a remote
Get a list of refs at the remote
Negotiate what data needs to be exchanged to synchroize the remtoe and local references
Download the packfile
Free the memory associated with a remote
Update the tips to the new state