The right starting point is probably (1) a good choice of implementation tools (I've been sketching out some ideas. I'm thinking C++11 and Qt with python as the scripting language), (2) cannibalizing as much of the existing functionality from other efforts possible: KiCad, gEDA, etc. and (3) then focusing on useability and advanced functionality.
The question is, why not contribute to KiCad or gEDA? That might be the right answer. If they don't collapse under their own complexity (would gcc have gotten to llvm given enough time?), they'll get to Altium eventually. I think the key is to focus on software architecture that enhances productivity. In my experience, that's the only way for a small effort to compete with big, well-funded teams like Altium.
I was thinking it would be cool to do it in pure python, or if that ended up not being fast enough, something like Rust/Python. If we're doing an entirely new codebase, might as well do it right from the start!
I said I totally agree that python should be the scripting engine.
What would be the amount of work needed to get to a basic version ? could that be supported by a kickstarter ?
If it could, maybe the rest of the way to altium can be built incrementally ?
[1]there's boldport(https://bitbucket.org/boldport/pcbmode) a python pcb tool , might be a good start