Fix what I broke with predictions and try to fix wireless charging.
Set up BatteryInfoActivity to get called back by Service whenever the battery info has changed, and then use that new info directly.
Tried to make onePercentHack even more effecient by using 8-byte buffer rather than default 8K and closing Reader after use.
Continued refactoring Service.
Updated target SDK version to 17.
Run Service in foreground to avoid being killed unless truly necessary.  Since it will always be restarted soon anyway, it's lightweight, and it's already notifying, so the user expects it to be running, it's not the ideal candidate for killing.  Perhaps most significantly, this supposedly also keeps task killers on modern Android from killing it.