shell: Add dry-run mode for testing
shell: Use exit code 1 for keyboard interrupt