Commit the work that has been done so far:
- Switch the way we measure the time in callout(9) from ticks to bintime.
- Change some fields in the structures callout, callout_cpu and cc_mig_ent.
- callout_reset_on() now converts the argument to_ticks to some bintime
value before giving it to callout_cc_add(), which has been modified to
receive a struct bintime rather than a value in ticks.
- Add a new per-cpu list to handle pending callout requests rather than
processing them directly on the callwheel. This simplify the logic of
the softclock() handler.
- Refactor the callout_tick() and callout_tickstofirst() code to make them
aware of the bintime measurement.
- Workaround tcp_timer_to_xtimer() to survive to the aforementioned switch.
- Refactor the cpu_new_callout() function in order to update the timer in
one-shot fashion via loadtimer() function. Until now the timer was
reprogrammed every tick.
Discussed with: mav