Adds reset_alarm_abs()

Alarm resets will allow a caller to update the time at which the alarm
will fire.  This way, you can increase the time of an alarm, while
keeping the system armed.  It is equivalent to unset_alarm; set_alarm;,
except that there is only one resetting of the tchain interrupt.

There is no guarantee that the alarm hasn't already fired.  If it has,
it will get reinserted into the tchain.

This isn't super-necessary for the kernel, since resetting the IRQ is
pretty easy.  But userspace will have alarm code that is highly similar
(and will use k/s/alarm.c as a base) and resetting the IRQ takes a
syscall from userspace.

If we need _rel and _inc, we can add those easily.
csquery checks for \r

And echos its input in interactive mode.