First pass at implementing VotingPool.Withdrawal

Still lots of TODOs/XXXs and just a single (and overly long) test, but I've
been working on this too long now; it's time to get some feedback and start
tackling the remaining things step by step.