Update CHECKLIST
Expand the userspace stack as needed!

Previously, the userspace stack was limited to 16 kiB.
Now, it's 16 kB by default, and increases as needed, by 16 kiB,
until the maximum of 8 MiB.

There is a big potential issue remaining, though: sometimes, resizing
requires a new page table to be allocated, which requires kmalloc...
which does not work when called from an ISR (such as page_fault_handler).
I'm about to look at this now.
Minor: fix indentation
Clean up/optimize copy_page_physical (rep movsd)
Print regs after BT (rather than before) for #PF
Update GCC include path to 4.9.2
Allow kmalloc from ISRs (see msg)

This solves the issue where a userspace stack can't grow beyond ~4 MB,
as a new page table needs to be allocated at that point.

As far as I can tell/remember, there is no reason kmalloc shouldn't work in ISRs now.
I believe the reason I disallowed it earlier was because it used mutexes, which
only work if the scheduler is active. For various reasons, it now uses interrupt locking.
Warn on userspace stack overflow
Clean up /bin by moving test stuff to /bin/tests
Add "grep" (very, very, very basic) and temporary shell stuff.

Both of these have been in the tree for months, but not committed.
They remain the *only* thing not actually tracked by git, except disk
images, so I figured I would add them and get a second offsite backup
(github) for free :-)
Add more stuff

With this commit, everything that one could possibly argue should be in git
is in git. Things excluded are disk images, *.o, *.pyc, distfiles and similar
stuff. The following is literally everything not included:

bootdisk.img
ext2-1kb.img
ext2-4kb.img
fat32.img
hdd.img
isofiles/boot/initrd.img
isofiles/boot/kernel.bin
misc/create_initrd.pyc
misc/out.img
serial-output
toolchain/distfiles/