Implemented cleanup workflow.

Summary: This adds `arc cleanup` which can be used to cleanup all branches that have been created by `arc patch`.

Test Plan: If you have stale branches sitting around from `arc patch`, running this command should make them disappear.  It shouldn't delete the current branch you're on (if you've done `arc patch` to test this revision, then it won't delete this revision because you're currently using it).

Reviewers: Sabre070

Reviewed By: Sabre070

Differential Revision: http://code.redpointsoftware.com.au/D32