Simplified the formatting code in main.

If the machine doesn't have a batter we'll get a blank field, but I'm
okay with that. I may revisit skipping empty fields later.

I think it's a bit nicer to look out without the format strings though,
and more cleanly expresses the intent.
The daemon now fetches the weather itself.

Before it was calling out to get-weather.sh, which has been deleted.
Some re-working of the retry behavior

This doesn't actually work because of a DNS issue; I'm going to go back
to invoking the shell script, but check the response code. That will be
in the next commit, but I'm keeping the backoff stuff from here.
Moved back to using the shell script.

It now exits non-zero when the request fails, which allows us to check
for errors in the daemon.
Lowered maximum sleep time for the weather retry.
Took out some debugging print statements.