modified the material loader to be a bit more generic, more work is needed however
cleaned up the deferred renderer now that the new material system is in use