adding constructor to use MaterialData
socket gems can now have data on them