This commit cleans up the bindings code and makes it a little more
structured and coherent.
It also removes sum direct usage of C code, or uses newly exported C
functions where appropriate.
The future goal of these changes is to export more functionality to
users and make the Owned* wrappers public.
* Manually export some additional helpers via static-helpers.c
* Rename Owned* types and move them to a subdirectory
* Add more convenience methods on Owned* types
* Add additional Owned wrappers for functions, bytecode, modules
* Move compile utils to bindings
* Move serializiation to subfile
TODO: The serialization code is also in need of a cleanup.
This commit adds a new "patched" feature to both the
bindings and the main crate.
This feature applies patches to the embedded version that fix up/extend quickjs.
All patches are in libquickjs-sys/embed/patches.