Fix crashes when GC triggers inside allocation inside initCallContext

initCallContext allocates new managed memory required for the implementation of
the arguments objects. During that allocation a GC may happen itself, and it
may happen in turn that objects the context "owns" don't get marked.

This patch makes sure that newly allocated contexts are included in the chain
of contexts to mark by setting engine->current and context->parent early on,
before init*Context() can do any allocations.

Fixes tst_qjsvalue with MM_AGGRESSIVE_GC=1

Change-Id: Iebd444631691b6d00da8cfd20a1f760a5e73ac56
Reviewed-by: Lars Knoll <lars.knoll@digia.com>