a migration plan off Bitcoin to another dedicated chain.
You could consider a merge mined side-chain (for security), or an existing altcoin. If interested in alt-coin route perhaps protoshares/bitshare have some synergy in being a bearer asset related alt.
But if you're going to do it an an alt you dont need to coloring, just directly represent the color. No need to encode your messages on top of a network that doesnt understand your semantics, if you can extend the protocol. You can technologically win an arms race with hypothetical anti-color rules, via steganographic arguments, but it doesnt change the network cost, so its zero sum for the anti-coloring and the pro-coloring.
About native color representation freimarkets have done an excellent job of thinking through the minimum new script features necessary for smart-contracts. I proposed a couple of extensions, and I saw they had the exact same, plus more as they have explored the full set of required features with the minimal, simple and elegant protocol bitcoin script extensions. (Freimarkets is completely unrelated to freicoin other than name). Bitshare itself has its own (unpublished?) direct encoded from scratch implementation in the works.
FYI I think we can sponsor or co-sponsor some research into the scalability of Bitcoin itself. What are the current research problems that can increase Bitcoin Scalability? How can we support this effort?
Well this is another solution. Make bitcoin so scalable that it doesnt matter. However that is really hard. Zero-trust offchain is one avenue, but its not clear how or if it can work; there maybe some 'crypto/computation physics' limits. Unknown so far, but lots of people are interested to see if it could be done. The existence of satoshi-dice didnt help as a catalyst - the scalability problem is known recognized and very hard, it didnt progress because we're at a technology limit unless and until someone can overcome it.
The problem as I see it is bitcoin has a scaling limit, like transactions per second, which it can support in full p2p bearer form. It can be scaled but only at the cost of reducing its decentralization. eg if block sizes go to 1GB, that counts me out of running a full node. Its an issue because if you can only be a full node, with an OC3 line, most people will be pool mining without validating what they're mining, and then defacto control remains unavoidably central. These will grow into large companies, be acquired etc. And then become defacto policy points and they'd just as well sign contracts and stop mining. OK so committed transactions can till prevent policy by making transactions opaque to miners, but it is not quite ideal itelf.
The other direction is that the minimum transaction value (implied by minimum fee) goes up, and the minimum bandwidth to be a full node stays p2p compatible. But that implies bitcoin turns into a clearing network. If its for large transactions its less interesting to users and will either disappear from lack of interest (remain as a whale speculator network?) or be co-opted and shaped by companies with a use for end-of-day clearing transactions - large exchanges, big payment processors. All user traffic anyway would end up off-chain. As the off-chain technology does not exist (and we dont know how to do it not for lack of trying), that means the off-chain technology will offer weak semantics: it will have need for central trust in offchain transaction servers, it will have risks of value seizure/account freezes, risks of the transaction server going out of business. Probably 1 of 3 properties could be fixed, or maybe 2 of 3 (pick any two features conundrum style) if the business even care to try. Many are "pragmatic" which is an ugly word.
And then where is bitcoin? In this environment a smart contract is not smart. Smartness requires final settlement which means strong fungibility (cryptographic blinding/hiding, or defacto). Without those guarantees, disputes will arise, transactions will be undone by court order, and the usual costs will creep back in and we're back to the status quo of credit card transactions, and not transacting without reputation research, reputation rating of the business world, which is where their high costs of existing revocable payment systems come from. I dont think most people understand this unfortunately.
As close as I got was committed tx (aka hidden tx), where you can transact with peer level policy decisions even if 99% of the miners were hostile to your transaction completing. https://bitcointalk.org/index.php?topic=206303.0
A new idea even triggered by your question is that I think you can reveal without miner censorship of the reveal, which was previously a UTXO compaction limitation. The reason is peers can broadcast old keys for revealing without fees because they are validatable against previously published data which was already paid for.
(The reason to reveal at all, and not re-spend in hidden form, which is supported is that it increases the UTXO set size because only people receiving the payment know what the transactions mean, it is in fact fully private and anonymous against anyone except people in the transaction path. The limitation is the velocity of money means that there will over time be many people in the path and they all need to see the full history. The actual payment is very compact as it is just a key allowing the recipient to identify and decrypt/validate the input transactions.)
Adam