This is a library crate that implements all of the component parts of
the `wiggle` proc-macro crate.
Code lives in a separate non-proc-macro crate so that it can be reused in
other settings, e.g. the `lucet-wiggle` crate.
Code generated by this crate should not have any references to a particular
WebAssembly runtime or engine. It should instead expose traits that may be
implemented by an engine. Today, it is consumed by both Lucet and Wasmtime.