Start equalizing the projected light code comparing the TDM engine sources.
There are a couple of gotchas transferring the algorithms since DarkRadiant has a different internal plane3 representation (storing dist, not d).
Right now, the frustums are flipped across the light origin, but at least they render.
The wireframe frustum is now drawn correctly, projection still wrong.
Correct order of frustum planes to coincide with those in the engine.
Fixup Frustum intersection code used by projected lights.

Draw Frustum normals for debugging purposes.
Improve AABB plane intersection code - still not perfect
Rewrite the Point light texture transformation matrix code to use pre-multiplications for better readability

Add comments about what is going on.
Rewrote the light texture transformation matrix code.
Cleanup and some documentation, but I'm not done yet.
Fix the vertex selection test for rotated projected lights.
Fixup texture rotation, projected image is now correct.
Re-enable proper light frustum culling.
First step towards proper vertex editing for rotated projected lights.
light_start editing produces sane results now.
More vertex editing improvements plus code cleanup.
Merge remote-tracking branch 'origin/projected_lights'