I can now stick portals backwards on SurfaceOfRevultion<PortalSpace2d>. Now I need to get that working with Euclidean geometry.
I have debugged the inverted Euclidean portal a little, but it still doesn't work quite right. I'm giving up on that. It's not like I plan on using it.
It works! I can control the very fabric of the spacetime continuum! MUAHAHAHAHA!

Seriously though, I now have a portal connecting Euclidean geometry to itself. Topologically, I have a punctured torus.