MOAR MEMORY MANAGEEMENT!! ARRRRGH!. But seriously, there are several places where we could be smarter about the threejs assets we use. A major change here - we no longer duplicate the materials on meshes on import, and instead, let the material def system deal with the caching. This will be faster in the case where uses load a 3d model but dont assign a materail through the gui. Also, we need to dispose some threejs assets - turns out three was holding on to some assets in memory. Potential opt - cache textures in the same way that we cache materials. Also, can we start using buffer geometry for batches or for assets when we control the loader?