Populate the init context with the thread that executes main().
When LIBUKBOOT_MAINTHREAD is selected, this allows libposix-process
to create INIT_PID from the main thread while excluding Unikraft's
init thread from the process.
Move the initialization of the main() thread before executing inittab.
With that change, update the parameters main_thread() function to pass
a pointer to ictx, so that it's possible for args to be updated by
inittab.