Cleanup

(This is on top of my fixes branch, so the pull request includes that too)

This is a bunch of cleanup patches that removes a lot of the duplication in `LowPower_Teensy3.cpp`, which should hopefully make future bugfixes easier.  The user interface should be the same.  It could probably use more testing; I've tried it with LPTMR, GPIO, and TSI wakeup from DeepSleep.