More Model::render() improvements

The main change in this PR is to group the mesh parts together that use the same material. The idea being that by reducing the time we have to switch materials we will help the GPU in rendering these complex models. On my system I see about a 3-4fps improvement for complex scenes with this change.

* group materials together when rendering models
* updates to rendering stats