Directional light implementation.

Clean up needed.