Break arc land run() into smaller functions
Break arc land run() into smaller functions

Summary:
Refactor the arc land code into several
functions so it's easier to maintain. This is in
preparation for adding hg support to arc land
in my next commit.

Without this refactor, adding hg support makes the run()
function too big.

Test Plan:
Set up a git repo and clone with a branch scenario.
Example: https://secure.phabricator.com/P614
Ran and verified:
arc land
arc land --keep-branch
arc land --merge
arc land --merge --keep-branch
arc land --hold
arc land --revision <another phabricator rev>

Reviewers: epriestley

Reviewed By: epriestley

CC: dschleimer, sid0, aran, Korvin

Differential Revision: https://secure.phabricator.com/D4056

coursera/arcanist,eSpark/arcanist,alexmv/arcanist,fivestars/arcanist,wikimedia/phabricator-arcanist,aik099/arcanist,sneakpeeq/arcanist,zhihu/arcanist,PageUpPeopleOrg/arcanist-patches,phacility/arcanist,fivestars/arcanist,kevinseelbach/arcanist,haskell-infra/arcanist,haskell-infra/arcanist,dguo-coursera/arcanist,hach-que/arcanist,r4nt/arcanist,r4nt/arcanist,r4nt/arcanist,jra3/arcanist,KieranHayes/arcanist,fivestars/arcanist,zhihu/arcanist,calblueprint/arcanist,eSpark/arcanist,aik099/arcanist,folsom-labs/arcanist,chundongwang/arcanist,aik099/arcanist,coursera/arcanist,jra3/arcanist,uber/arcanist,codelabs-ch/arcanist,kevinseelbach/arcanist,calblueprint/arcanist,hach-que/arcanist,wxstars/arcanist,kevinseelbach/arcanist,uber/arcanist,sneakpeeq/arcanist,wikimedia/phabricator-arcanist,codelabs-ch/arcanist,fivestars/arcanist,julkiewicz/arcanist,KieranHayes/arcanist,aik099/arcanist,wharris/arcanist,haskell-infra/arcanist,eSpark/arcanist,wharris/arcanist,phacility/arcanist,sneakpeeq/arcanist,wxstars/arcanist,codelabs-ch/arcanist,Symplicity/arcanist,KieranHayes/arcanist,julkiewicz/arcanist,jra3/arcanist,sneakpeeq/arcanist,wikimedia/phabricator-arcanist,phacility/arcanist,wharris/arcanist,hach-que/arcanist,eSpark/arcanist,hach-que/arcanist,Khan/arcanist,zhihu/arcanist,wxstars/arcanist,memsql/arcanist,calblueprint/arcanist,chundongwang/arcanist,dguo-coursera/arcanist,chundongwang/arcanist,memsql/arcanist,uber/arcanist,folsom-labs/arcanist,PageUpPeopleOrg/arcanist-patches,phacility/arcanist,folsom-labs/arcanist,Khan/arcanist,kevinseelbach/arcanist,memsql/arcanist,chundongwang/arcanist,r4nt/arcanist,calblueprint/arcanist,wxstars/arcanist,zhihu/arcanist,codelabs-ch/arcanist,folsom-labs/arcanist,coursera/arcanist,uber/arcanist,Symplicity/arcanist,PageUpPeopleOrg/arcanist-patches,KieranHayes/arcanist,wharris/arcanist,phacility/arcanist,julkiewicz/arcanist,Symplicity/arcanist,dguo-coursera/arcanist,julkiewicz/arcanist,alexmv/arcanist,codelabs-ch/arcanist,haskell-infra/arcanist,alexmv/arcanist,alexmv/arcanist,Khan/arcanist,coursera/arcanist,Khan/arcanist,dguo-coursera/arcanist,memsql/arcanist,PageUpPeopleOrg/arcanist-patches,Symplicity/arcanist,wikimedia/phabricator-arcanist,jra3/arcanist