BROWSE: Return R_UNSET rather than R_NONE.

Following discussion on AltMe, modify BROWSE to return R_UNSET rather
than R_NONE.

In addition, handle the NONE case correctly (return early).
Copied DELETE-DIR from Rebol 2 (cc#1545)

Since there was no strong opinions on this
in the http://issue.cc/r3/1545 ticket
I would keep it in Rebol 3 to converge towards
the level of usefulness Rebol 2 provided.
Undefine strtod to suppress redefinition compiler warning.
Remove int32 from Reb_Val_Data (not used)
Fix circular block compare crash, CC#1049
Correct SHIFT bug#2067
Replace undefined arithmetic
Detect overflow of arithmetic shift
Fix EVEN? and ODD? to be compatible across platforms
Added support for ESC-O escape sequences in addition to ESC-[.

Process_Key doesn't query termcap or terminfo for the correct
control sequences. Accepting both ESC-[ and ESC-O mimics xterm.
Systems that define unsigned int but not DEF_UINT can now build w/o warnings.
Free intermediate buffers used by do-codec (CC #2068)
Moved DEF_UINT for Haiku to reb-config.h
Reverted to previous systems.r file.
cc-1748: Guard protected blocks from /INTO target of REDUCE, COMPOSE
Fix CATCH/quit interaction with TRY (cc#851)

User-level visibile effect: CATCH/quit no longer erroneously disables an
outer TRY (or ATTEMPT, etc.).

Try_Block_Halt attempts to catch both error conditions and halt
conditions (QUIT, HALT). However, Try_Block_Halt incorrectly implements
this by simply overwriting the error handler stack with the (extended)
halt handler stack, effectively throwing away all other _error_
handlers.

The only user of Try_Block_Halt is CATCH/quit. The effect of the
erroneous implementation is that CATCH/quit disables other (outer) error
handlers (TRY, ATTEMPT), as reported in CureCode ticket #851.

However, CATCH/quit only _wants_ to handle quit conditions. Error
conditions are simply rethrown by CATCH/quit. So we can fix this issue
by changing Try_Block_Halt to only catch halt conditions (but not error
conditions). This commit does exactly that, leaving us with two internal
functions: Try_Block, which only catches error conditions; and
Try_Block_Halt which only catches halt conditions.

Also comment similar patterns in top-level handlers which are actually
safe.

This fixes CureCode issue #851.
Fix WAIT polling interval on POSIX platforms

WAIT with a timeout internally encodes the timeout in milliseconds. The
actual POSIX host implementation however inadvertently uses this value
as a timeout in microseconds. This leads to a de-facto busy loop when
WAITing, as the internal timeouts are simply too short.

Originally discovered by Richard Smolak. Independently reported by
Bohdan Lechnowsky.
Fix Collect_Object to not overwrite memory BUF_WORDS does not own. Without this fix, Collect_Object was causing crashes in 64-bit R3.
Amend Init_Frame_Word to set OPTS_UNWORD option to the word added to the frame word list as suggested.
Use Bentley & McIlroy's qsort for sorting strings and blocks
Currently, R3 uses platform-specific code for sorting.
This may increase the effort necessary to port the interpreter to new platforms.

This implementation brings the following advantages:

- The sorting algorithm is stable solving cc#1152
- Sort results will be consistent across wide range of platforms
- Makes porting to new platforms easier
- Battle-tested solution, as this is the way how the problem was solved in e.g. OpenBSD, FreeBSD, Apple OS, Android

The commit makes the following changes:

- Bentley & McIlroy's qsort is added as src/core/f-qsort.c.
- The source is unmodified except for a reference to where the source was downloaded from and two parts marked "commented-out"
- An attribution notice is added to NOTICE.
- The additional source is listed in src/tools/file-base.r.
Regenerate the default bundled (Linux/x86, 0.4.4) makefile, to have it build the new f-qsort.c.
Make word lists of frames bare as suggested.
Based on the Collect_Obj fix.
This is HostileFork's "notorious TCP bug (EVM_DEVICE events allowing ports to GC)" fix minimized. It is meant as an alternative to his pull request.