Download backup

apiserver/backup: api endpoint for downloading a backup
Then once all this logic is moved to it's own function, the code would be something like:

	tempDir, err := ioutil.TempDir("", "jujuBackup")
	if err != nil {
		return nil, false, fmt.Errorf("cannot create temp dir: %v", err)
	}
and the h.sendError() call would be called with the overall informative err from the function. "backup failed" is less informative than "cannot create temp dir". See the /tools and /charms code for how they do it there.