Rename a label from a plain 'ERR' to LBL_ERR.

The Solaris preprocessor has already  #defined ERR.
Use the full pathname for /bin/sh in Makefile.

Using a plain SHELL = sh with Solaris make results in the error message:
  mksh: Fatal error: Could not load Shell from `sh': Bad file number
Avoid an anonymous union in MVMOSHandleBody.

Although anonymous unions are in the c11 standard, and gcc has supported
them for some time, not all compilers implement the standard fully.
The Solaris Studio 12.3 compiler (the current release) does not.
This patch gives the union a minimal 'u' name.  Something more meaningful
would be fine too.
On Solaris, add -lkstat for libuv kernel statistics.
On Solaris, add -mt to ccflags, since we are compiling for threads.
Add Solaris-specific list of object files for libuv.
Add #defines for various EXTENSIONS to get Solaris to compile libuv.
Make 3rdparty/dyncall use Makefile.embedded for Solaris.

See the file 3rdparty/dyncall/README.Solaris for more information.
Use sched_yield() on Solaris systems.

According to the Linux manpage for sched_yield(), it should also be used
whenever _POSIX_PRIORITY_SCHEDULING is defined.
Fix Win32 build.