History for the shell
Right and left arrow key functionality
History no longer stores empty strings, tab completion no longer matches on empty input
Fix for ctxsw
Merge remote-tracking branch 'origin/pi-hw2' into team_redundancy_team
Merge branch 'ctxsw_bug' into team_redundancy_team
Merge remote-tracking branch 'github/shell' into team_redundancy_team

Conflicts:
	shell/shell.c
Compile for raspberry-pi, not arm-qemu
Merge remote-tracking branch 'github/usb' into team_redundancy_team
Revert uartInterrupt.c changes from #833470009df82155e9a0e2d2235a3bde9ee641c0
Merge remote-tracking branch 'github/usb' into team_redundancy_team
Cleanup and limit USB output
Fix stray @ in usbStart
Workaround for possible bug in ctxsw()

Something is wrong w/ prnull's initial stack layout or SP value.
If the first call to resched() occurs from prnull, prnull's SP becomes
corrupt and the next time it is selected for execution the PC will be
somewhere random in memory.

Experimentally, I found that forcing the first call to resched() to
occur from an IRQ handler (timer in the case of the raspberry-pi)
avoids this issue.
Revert "Fix for ctxsw"

This reverts commit f80caabaf9de64e84ef62f702f9ef00336739412, to be replaced by cleaned up version: 8e12392c04c867e06e36003bf3977b8c05dd0e94
Merge branch 'ctxsw_bug' into team_redundancy_team
Merge remote-tracking branch 'github/usb' into team_redundancy_team
Minor fixes to usb functionality
Fix broken usleep()
USB: Attempt at better MaxPacketSize detection