Templatize TriangleMeshPlyReaderDelegate

This enables reading of Base and other meshes with standard parameters
Clean up convenience loader function
Refactor Graphics::MeshPlyreaderDelegate to reuse TriangleMeshPlyReaderDelegate
Move utlitiy functions into separate files
correct handling of templates on linux
Move convenience function into separate file
Review Changes
Merge branch 'feature/refactor-mesh-loading' into 'master'

Refactor Mesh Loading

Merged-on: https://www.assembla.com/code/OpenSurgSim/git/merge_requests/1018514