The solution to money in politics is simple: stop voting for politicos who accept millions of dollars in bribes, ahem, campaign contributions and who court lobbyists. It's really that easy: stop rewarding those who collect millions and start punishing them by refusing to vote for any politician who accepts more than $100 from any entity in any one election cycle.
As with so many other issues, we have been well-trained to expect a centralized authority to save us from ourselves: in effect, we're asking the Supreme Court, Congress, etc. to please stop us before we vote for a bought-and-paid-for politico again.
Nobody forces us to vote for the candidate who raises the most money and blows it on media buys to persuade us that they're not bought-and-paid-for. But think about it: the very fact this craven toady can afford to spend millions of dollars on advertising proves he/she is well and truly bought-and-paid-for.
The only exception is multi-millionaires who spend their own millions attempting to persuade us that they'll be more independent that the toadies begging for millions, but a cursory examination of the record of millionaires in office (gosh, the vast majority of craven toadies turn out to be millionaires) finds that once in power, these "I bought myself" millionaire politicos are no different than the bought-and-paid-for politicos.
Nothing will change until the candidates who raise and spend millions trying to persuade us they're not bought-and-paid-for lose elections, not on their platform or party ideology but on the simple fact that they're corrupt to the core.
Politics will change when the candidate who--
1. refuses donations above $100 from any entity--person, company, etc.
2. refuses anonymous donations or donations from slush funds that don't publicly list who operates and funds the slush fund
3. publicly lists every donation and donor on a website
4. refuses to meet paid lobbyists in any circumstance
5. refuses all gifts from anyone, including constituents--every gift is donated
6. refuses to sign secret "loyalty oaths" to powerful lobbies such as the NRA, public unions, Sierra Club, etc.
--wins the election not on ideology or platform issues but on the integrity of his/her campaign.
You want to clean up politics? It's easy: make sure every candidate who accepts millions of dollars for campaign advertising, welcomes gifts from paid lobbyists and makes secret promises to powerful national lobbies loses every election.
Alternatively, only vote for candidates who run a grassroots social-media campaign that costs next to nothing, who refuse all donations above $100, who leave footprints on the rear ends of lobbyists and who tell all the powerful lobbies to shove it where the sun doesn't shine because they're not pledging anything but not being for sale.
If we only voted for unbuyable candidates, money would become poison in politics rather than mother's milk. We don't need a centralized authority to save us, we can save ourselves if we throw out all the bought-and-paid-for politicos instead of rewarding them with our lemming-like approval of their corruption.