introduce --dry-run arg, closes #2