More updates.

RemoteDataStore.hasAccess() now does stuff and is required.
@StephenJust, take a look in UploaderService.java to see how its needed.
I'm not sure trying something network-related, then catching an
IOException within the logic I have is better than just having
.hasAccess() poll the system.

There's a little bit of sleeping evilness on how the service runs. If
offline, it sleeps for a while, then tries again. Not ideal, but we're
running out of days to do StopServiceOnResult(int), then restart the
service later, and do fancy stuff.