Yes, I think CoinJoin should be a very good start. But do any really decentralised and fully working implementations of CoinJoin exist already? I don't think so and would be interested to know if they are.
I'm not aware of any either but don't let that deter you from using one of the already existing solutions even if they aren't perfect.