Download backup

apiserver/backup: api endpoint for downloading a backup
The name Info kinda sucks, a lot :-) I know that State has an info attribute and that's what we're exposing here, but I'd really like the getter to be called MongoConnectionInfo() (or whatever). Just not Info(). And the getStateInfo() method elsewhere in this pr would be similarly renamed. eg we have already a "StateServerInfo" method on state.
It's unfortunately we need to expose this internal detail, but I can't see an easy way around it without a bit of refactoring.