QuickJS: fix compatibility with quickjs-ng 0.16.0 and later
Two separate problems prevented njs from working with the recent
quickjs-ng releases.
JS_NewArrayBuffer() has grown a "max_len" argument and its free callback
has become a realloc one. The calls are wrapped now, the callback has
to implement the whole realloc contract, because transfer() reallocates
the data even for a buffer which is not resizable.
The class ids used by njs started at 64, while the engine reserves the
ids below JS_CLASS_INIT_COUNT, which has reached 67. JS_NewClass()
failed with a collision and the context could not be created. The ids
are moved above the engine range and the remaining unchecked
JS_NewClass() calls now report the failure.