jediepcserver.py: expand user (~) and env vars in virtual-env argument

I use couple of hosts with different hostnames and expanding `~` in virtualenv paths would simplify such use case a lot.

Also, I couldn't resist tweaking api a bit to separate concerns and make it clearer what's going on.