Shader cross compatability

Abusing the power of the preprocessor!
Vector's now use mrb_obj_dup to maintain the class of the parent
mruby bump