Allow alternate branch names in feature finish.

Previously, we'd just push whatever branch you were on - whoops!  Or
worse, if the user didn't have push.default set to 'current', we could
be pushing to any number of other branches; this is probably still a
problem a bunch of other places. :(