fernly-loader: Set serial port speed after opening

When Novena first boots, its serial port is running at an unknown
speed.  Fernvale runs at 115200.  Set the serial port speed once
the serial port is opened.

Signed-off-by: Sean Cross <xobs@kosagi.com>
loader: Get basic loader working well

The loader binary is now very reliable.
Makefile: Build fernvale loader host and target files

THe Fernly loader consists of a binary run on the target, to load
data into RAM, and on the host, to feed data to the target.  This
gets the build system to compile both halves.
usb-loader: Add a loader that supports the ROM
main: Add peek and poke commands
bionic: Fix strnlen to work with length of -1

This is used to mean INT_MAX.
vsprintf: Fix string printing

It would previously only print out the first character.
serial: Enable USB serial mode
usb-loader: Get basic USB loader working well

This is good enough to load fernly over USB.
start: Don't relocate to address 0

fernly runs in IRAM now, before PSRAM has been set up.
fernvale.ld: Load at address 0x70000000

We're hacking on PSRAM now, so load to iram.
vectors: Get rid of irq C function

We don't have interrupts yet.
main: Don't enable interrupts

We don't yet have interrupts, so don't enable them.
main: Disable battery watchdog

This allows us to run without a battery.  Otherwise, it would reboot
after about five seconds.
fernly: Fix printf("%d") > 99999

This adds lots of divison code, which fixes, among other things,
calling printf() with %d greater than 99999.
main: Add msleep command

Using a delay loop, it's more or less working right.
main: Fix "(null)" when unknown command is tried

It used to print out "Unknown command: (null)".  Fix it so that it
prints out the actual command instead.
usb-loader: Remove unneeded code

We remove more code from usb-loader, to make it fit in weird places.
fernvale: Fully get PSRAM working

This uses scriptic to run scripts that do bringup of various systems.