Refactor material system a bit so properties for different renderers can be separated.