Branch/shader materials

This is not ready, I just wanted to get some eyes on it.

I added an example app at `public/shader-material`.

@eric79 
You'll need a return at the end of this file for those of us with weak `yaml` parsers.  (Mine doesn't like for files to end with a `:`)