Use logging for output
Add safe_run
More safe_run rework
fix history-depth
Use safe_run in detect_version
more refact
refact
Add detect_changes()
Write changes update
refact