some refactoring + support for multiple directories with and without incremental backups