I am new to UNITY, however I notice that the shader system is really basic.
In order to make it friendly to artists, what I think is needed is a nodal shader interface, where you can easily create new custom shaders based on combinations of basic nodal shader operators.
A good example of this would be any high end 3D program (say maya or XSI) where you can create shader trees using nodes and that creates the final shader or look for a given object.
This is what I think Unity needs - a nodal shader interface where you can combine nodes to create your own custom shaders that compile at runtime.