A brokering intermediate server (IM) for web servers behind NATs.
It is very similar to ncat --broker functionality but also supports today's multiple connections.
Build on linux server using phyton or ruby with the most common tools, it should be able to scale massively in cloud infrastructures.
Read the enclosed design docs - they should be simple and clear
the project is: Complete the design, provide interface for other components, implement and provide documentation how to set such server.
during the build, you should simulate with your tools, do not relay on the other components specified in the design
* If you believe there is a simpler way to do that - please tell me.