pub fn self_update() -> Result<String>
Perform self-update by downloading and replacing the current binary. Only works when running from a release binary (not cargo run).