I've often wondered if a system of unlimited but not anonymous contributions wouldn't work better than our current systems. I see two big upsides - first, if a politician gets a few big "angel" contributors, that would at least reduce the number of outside parties to which that politician is beholden. Second, as long as the public knows who's contributing to who, they can respond accordingly, thereby negating some of the effect of the contribution itself. For example, if GM gave $100M to the American Nazi party, the public can (and likely will, hopefully) boycott GM products.
Obviously, this system has flaws, so I don't know if it would really work, but it's interesting regardless.