Good work! I have updated RainbowMiner with the new beta and will start testing asap.
Question in advance:
Some pools give a penalty on stales and even rejects, so we might case on the pool name and insert better defaults.
--xintensity -1 on flexpool or nicehash give a poor result. You need --xintensity 32 or lower. Note that some pools will disconnect you if you have more than 5% stale.
Does this still apply? Or did you optimize the --xintensity -1 in a way, I don't need to take care about the fixed xintensity settings for Nicehash and Flexpool?