Moving towards materials as a collection (it's a set right now and I'm thinking it might need to be switched to a vector). Removing references to members m1 and m2 where not necessary and usage of get_material().