Fix Collect_Object to not overwrite memory BUF_WORDS does not own. Without this fix, Collect_Object was causing crashes in 64-bit R3.
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.
Prevent word duplication when appending to an object
Fix CC#1979
Optimize the code to not use search
Fix 'self handling described in CC#2076
Rebased on Collect_Obj fix to not cause crashes in 64-bit R3
Merge branch 'qsort' into community
Merge branch 'append-obj' into community