Run any exec_before command prior to checking sources

As if we check that the backup sources are present first we may fail if
the exec_before is populating one or more of the sources. For example,
we might be dumping a database to what would otherwise be an empty dir.
Also make sure we always run exec_after command

As we may be relying on it to restore system state, for example, in the
case we stop a database server for the duration of the Tarsnap backup.
Fix xpect.io breakage: https://github.com/miracle2k/tarsnapper/issues/11
"Merge pull request #12 from jefft/fix-xpect.io\n\nFix xpect.io breakage: https://github.com/miracle2k/tarsnapper/issues/11"
Fix typo
Ensure any Tarsnap exceptions are actually handled & logged

This also ensures that exec_after will always actually run.
"Merge pull request #8 from ralish/fix-exec-before\n\nRun any exec_before command prior to checking sources"
Use log.exception() so we get some info.
Merge branch 'master' of https://github.com/miracle2k/tarsnapper into shell-expansions

Conflicts:
	src/tarsnapper/script.py