refactoring header files
introduction glv::MaterialHandler