Well, the changes are not trivial. I still haven't started checking
all that's needed for the per-project settings, but it should be
available in about 2 releases (so, you don't need to worry much about
that one).

And would it be possible to add an extension point to add python interpreters managers? :)
As for gathering additional information from an environment
not available (which is actually a thing that came up recently), the
current solution is having a script that'll run in that environment
and have it generate python files (just with the basic structure:
modules, classes, methods and docstrings) and add them as if they were
files in the pythonpath (adding it to a zip file may also be nice if
you're having different versions).

Hum... in fact, this solves problems of auto-complete and code indexing. But, we still have a point: on PyDev, whenever a Python interpreter is selected (using the Python Interpreter dialog, which it is accessible through Window -> Preferences), it runs the script on local environment. So I cannot set it as the current Python interpreter.
Would that suffice for what you
want? (as you'd need to create a script to gather that info someway
anyway, you might as well already make it in a format that pydev
already supports)

This solves auto-complete and code indexing, but I still need to define a local Python interpreter on preferences, which does not correspond with the correct one.