Adding a new way to convert in CachedConverter where we pass a custom converter object that also is responsible for giving a unique hash.
Adding new constructor to IECoreGL::MeshPrimitive where we can pass the original non-triangulated topology and then, addPrimitiveVariable will triangulate any primvars added. This will be useful for updating scenes in the future.
Also using the CachedConverter for all triangulations and normal computation.
Using the new maxVerticesPerFace() from Mesh when converting to a GL mesh.
Addressing notes from John: better comments, preventing crash if "P" is not present and clearing the object in the CachedConverter to prevent misuse.