add SET-ENV, tweaks to host api for environment string handling
Fix spaces-instead-of-tabs that slipped into /src/os/posix/host-lib.c
Update src/boot/actions.r

Corrected misspelled word in head?  definition; 
from 
begininnt
to
begininng
fix a typo
Fix a regression in PARSE for the THRU keyword

Commit 44012cc1e7313f2fd3772e543f2f8b9096d90f9c introduced a regression
to PARSE that may lead a failing THRU to incorrectly reset the parse
position. This, in turn, leads to endless loops in PARSE. A testcase
showing this regression is:

    parse "123.123." [any [thru "123"]]

This same regression also caused an endless loop in the `make prep` step
of the R3 build.

Technically, the earlier commit always incremented the match position
with the number of characters for skipping a successful THRU, without
checking if the THRU match itself was successful. For unsuccesful
matches, `NOT_FOUND` is returned, which is defined as -1. Adding the
THRU offset to this may result in a position that is again within bounds
of the data to be parsed, thereby potentially initiating an endless
loop.

This commit fixes the regression by adding an explicit check against
NOT_FOUND to the increment condition.

The regression was originally noted by user "dt2" on Stack Overflow
chat.
two memcpy to memmove changes, fix use of uninitialized err value
Match  "uncased" parse in Check_Bit by inverting HAS_CASE(parse)
Fix crash in evaluation of immediate operators (op! values)

The `ET_OPERATOR` case in `Do_Next` potentially dereferences a null
pointer in `word`.

For the regular case when an op! is evaluated indirectly via word lookup
(as in `do [1 + 2]`), the `word` variable will is properly initialised
during the lookup before entering the operator evaluation.

If, however, an op! is evaluated directly (e.g. `do reduce [1 :+ 2]`),
`word` will still be initialised to `0` and the attempt to look up the
name associated with the operator in VAL_WORD_SYM(word) will dereference
a null pointer.

We fix this in analogue to the implementation for immediate functions,
by also using the internal "-unnamed-" placeholder (`ROOT_NONAME`) for
immediate operators.

This bug was found via static code analysis with the Clang Static
Analyzer.

Fixes CureCode bug 1934.
Fix crash when reading dns:// without a hostname

Previously, `read dns://` crashed the interpreter. With this fix, a
dns:// spec without a hostname (or IPv4 address) is considered invalid
for READ access:

    >> read dns://
    ** Access error: invalid spec or options: dns://

Fixes the crash reported in CureCode issue #1935.
Allow INDEX? of NONE, returning NONE

This makes INDEX? "NONE-transparent", in line with the already
none-transparent EMPTY? and LENGTH?:

    >> index? none
    == none

This implements CureCode wish #1611.
Remove redundant code

The A_INDEXQ and A_LENGHTQ cases would already fall through to A_TAKE
containing precisely the same `if` (making the `if` redundant in case
the condition is true) and then falls through further to the `trap_it`
block (making the `goto` redundant in case the `if` condition is false).
Move NONE! to end of INDEX? & LENGTH? typespecs
parse thru fix
bug#1939
Merge pull request #58 from angerangel/master

Corrected mispelled word
Merge pull request #59 from blackball/master

Fix a typo when typedef uint
Merge pull request #60 from earl/fix-parse-thru

Fix a regression in PARSE for the THRU keyword
Merge pull request #61 from hostilefork/fix-mem-errors

two memcpy to memmove changes, fix use of uninitialized err value
Merge pull request #63 from hostilefork/parse-bitset-casing

Match  "uncased" parse in Check_Bit with !HAS_CASE(parse)
Merge pull request #55 from hostilefork/set-env-updates

add SET-ENV, tweaks to host api for environment string handling