Why do we have a custom shader for this?  Won't ['Image'](https://github.com/AnalyticalGraphicsInc/cesium/blob/master/Source/Scene/Material.js) do the trick?  If you're concerned about performance, we can replace the `components` block with `source`.  However, I bet most/all GLSL compilers recognize that there is really only one texture read.