use ffi structures for vec3/vec4 rather than plain tables - big performance improvement and memory savings, add table.clone_ffi to wrap FFI structures in Lua objects