re-introduce fix for linedefs with two-sided flag but without a second sidedef

This re-introduces the fix for rendering of linedefs that have the
ML_TWOSIDED flag set but are missing a second sidedef. Although this
merely fixes a mapping error, I decided to re-introduce it, since
I consider its removal a regression. However, I have found
a demo-safe way to fix this now: Instead of removing the flag entirely,
the line in question is simply rendered as if it was one-sided, so the
change is only in the renderer.

Moreover, if the sidedef does not have a midtexture, it is rendered
transparently, as in Vanilla or Chocolate Doom. This fixes
impassable fake glass as in OTTAWAU.WAD [1] while at the same time fixing
the HOM gaps in the walls in NOVA.WAD map 30 [2] and retaining demo
compatibility with challenj.wad.

[1] https://github.com/chocolate-doom/chocolate-doom/issues/63
[2] https://github.com/fabiangreffrath/crispy-doom/issues/14#issuecomment-49705789