Added missing definitions.
Restructure programs.

Make them easier to manage, and provide versions for all the offset
mapped ones without base layer.

Note that we don't provide versions without a base layer for the
standard shader ones since we envision that most modern GPU will be able
to handle them with one pass.