STL file viewer
What does this MR do?
Gives the ability to render 3D STL files natively through ThreeJS. This does not support diffing the files, only viewing them in the file viewer. Diffing them should be done in a different merge request.
Screenshots (if relevant)
What are the relevant issue numbers?
Part of #30074 (moved)