Fixes init script loading

We were starting with the script string, which is a kernel address, and
then running off the end of it, replaces spaces with \0s for a while.
With crazy results.  The monitor prompt was missing some letters,
probably because we clobbered them, etc.  Also, if you return -1 before
calling mon_bin_run, the kernel would just PF, and then GPF on its BT.
yikes!  We might have been clobbering more stuff too, like running off
the end of largv.

This newer version still works, and doesn't have those bugs.  But it
might have more.  We should consider rewriting it with parsecmd() or
something.  That'd also get rid of the need for the two loops of
parsing.