well, actually for him to get the properties display to update correctly with a Vec3 variable then he needs to do this:
change this:
object.model:SetKey("rotationspeed","0,1,0")
to this:
object.rotationspeed = Vec3(0,1,0)
and do this for the GetKey check/return value:
elseif key=="rotationspeed" then
return self.rotationspeed.x..","..self.rotationspeed.y..","..self.rotationspeed.z