Backup client

Just so I can leave some comments. :)
I'm surprised there isn't some utility code that does the boilerplate here for us.