Fixed GL3 light crash

-Fixed lights. A lot of optimizations are needed for them, but at least
they don't crash now. Forgot to replace default_shader with the
bound_shader. Lights are still broken in the sense that sometimes they
don't render correctly. For example, in Project Mario the lights only
work on Yoshi for some reason. Will investigate later.
-Added d3d_set_clip_plane function. It allows using clipping function in
vertex shader. Useful for things like reflections. Right now implemented
only in GL3, because there wasn't such function in GL1 (but something
similiar, which maybe can be implemented). DX has empty functions as
well.

Tested on many 2D examples as well Project Mario, Multitexture example,
Minecraft example.