From the problem "Multiple uniquely textured objects - having only one shader" !
this version has NO scripting :)
1. Create nulls where you want the geo to be finally placed.
2. Create groups as shown.
3. Edit and create ICE tree as shown.
4. If you need to add new items, do as shown.
5. Playing with the texture co-ord's.
6. At the end of the video, I change the particle emit size - which changes the object size.
7. That's all the shader is. One color map lookup. You could connect in mia arch etc. as an alternative to phong :)
Note: You should set the speed to be technically correct, as well as the emit points = 1.
There is it - "Multiple uniquely textured objects - having only one shader". Hope it's useful for you.
Next time make the problem harder :)