Support simple Hg and Git storages

This PR is my first backup development attempt, so it may not conform to all contribution needs.

The backup is done on `package.trigger` rather than `package.filenames`, with (git|hg) commit.

The main problem to support SCM storages is that for them the packager, compressor and splitter doesn't make any sense at all. I had made efforts to make changes in the existing code as minimal as possible. See diff.
There's no need to call `self.` in front of this method call, right?