a few improvements

Found an issue that may be the cause behind the RTC not working - one of
the sleep commands set the system into LPM2 while the wake-up
instructions are recovering as if it had been in LPM0, therefore leaving
some of the clocks disabled.
Also implemented some reduced-functionality power-saving methods to
prevent brown-outs.