Add ReplaceSeries and refactor the CreateSeries function into smaller steps

This is fine, but it's only taking the case where we're increasing the number of keys (when a voting pool member is added). We should test also reducing the number of keys (when a voting pool member gets kicked out) and changing just one of the keys (when one voting pool member's keys get compromised). These are all real scenarios that I want to be able to prove work.

In addition, a 1-key voting pool is really not that useful, nor is a 2-key voting pool (the branches in those cases conflict). We should test with a 3-key voting pool at a minimum.

You can copy and paste this code, but I would refactor to use the common stuff or make it table-driven.