Implement MasterElection

I'm wondering if ```Transition()``` shouldn't also fire off the next step for you? Again, haven't finished reading everything, but if there's two transitions to the same state, that'd make sure there's no way you'd get one of them wrong...