Expose all the backups functionality as a top-level struct.

This patch adds a top-level backups abstraction.  It also exposes the backup creation functionality through a method.