...
And Monero could hypothetically implement zk-snarks offering both alternatives. Open source projects tend to eat other projects that have flaws (the premine tax). Then again, Zcash seems to have locked in the experts on this tech.
This is a very interesting idea that is worthy of further research.
Edit 1: Multi signature transactions and sidechains are already identified in the Monero Design and Development goals
http://https://getmonero.org/design-goals/Edit 2: If this were to be implemented in Monero it would be in addition to and not in lieu of RingCT since RingCT will be mandatory for Monero transactions. The base coin, Monero, would be using RingCT.
Edit 3: By the way this concept has already been proposed by Shen Noether (with zk-snarks implemented on top of RingCT) and I have had some prior discussion on the subject with him. It should be considered at this point the subject of research, in particular with respect to my edit 2 point above, namely implementing zk-snarks on top of RingCT. RingCT is a must here since it would be needed for multi signature transactions in Monero.