remote: remove git_push from the public API

Instead we provide git_remote_upload() and git_remote_update_tips() in
order to have a parallel API for fetching and pushing.