Not a developer of the system here, but figured I'd chime in.
From what I can tell they have a standard Debian box that's running each user in it's own container (likely chroot, that's what it looks like to me). Then they have an Apache 2 server with mod_wsgi serving with a virtual host for each user pointed at their own unique wsgi app (wsgi middleware makes this dead simple to do, I really hope they have it there and not in apache honestly).
What all this means is that you share an IP. Found this out with my own tinkering, if I send a different SERVER_NAME wsgi param, I get routed to someone else's app (and it defaults to pythonanywhere.com). I'm not sure how this does with opening ports other than the std port 80 (likely disallows it entirely, as SSL isn't currently supported) since I would assume you are sharing a box with everyone else.
Now as for your telnet shell into the running twisted app (assuming I'm understanding what you're trying to do correctly), I would think they are running across multiple physical boxes on the amazon servers. Not sure what that does to running two bash shells, and trying to have one talk to the other, but worst case scenario you start up the twisted server with a "python myscript.py &" and then when it goes into the background, start up a telnet or netcat session to the port twisted is listening on.
If you're having trouble getting web traffic routed to an instance of your code without going through WSGI, there's only one thing that pops to mind and I don't know how it works. That would be setting up a wsgi->HTTP proxy (see the paste.proxy stuff) which talks to your code via HTTP. If your app doesn't talk WSGI, not a ton else I can think of is going to help, since that's currently what a lot of this stuff is based around.