cc2538: reimplement the hwtimer module using the MCU's Sleep Timer

The main benefit is that the Sleep Timer continues to work in low-power modes PM1 and PM2 whereas the GPTimer units are no longer clocked. Tested ok.
Not spinning but prolonging the value instead appears *wrong* to me. `HWTIMER_SPIN_BARRIER` is used to filter out values in `core/hwtimer.c`,