I don't know if you already have done this, but before starting on any
major changes, I would suggest you talk to some of the core developers
(Brion, Tim, etc.) to make sure that such changes will not be so
detrimental to performance as to be useless.
I would also try to involve the community and get their feedback on a
wiki page somewhere. Of course, most ideas might just be wild, not
implementable, etc., but you can get a nice gauge of what's needed and
you might get some good ideas.
I wish you luck in the endeavor though, the code could really use a cleanup.
--
[[en:User:Dori]]