pub trait Runnable { fn run(&self) -> Result<(), Box<dyn Error>>; fn main(&self) -> ExitCode { ... } }
Run something, can either succeed or fail.
Run somethin, returning an ExitCode to return to the OS.