LuaD enhancements

Fixed static arrays.
Fixed support for calling functions which receive const args.
Rework struct to use userdata; conversion is not lossy, conversion should be faster, less garbage, supports more features (methods, properties).
Classes improved to support fields, properties.
Static type interfaces and creation of struct instances in Lua code.
Default construction is supported in static type interfaces in lieu of a constructor.
Yeah, that's what we do in Phobos. Maybe soon we can use `dfix` to do it all in one swoop (although LuaD's codebase is relatively small, so maybe 10 minutes with grep is all that's needed...)