### Description To promote reuse of `CommandLogger` we should add an option to the `run` function to support passing of a logger. ### Technical Design _What modules need to be created or enhanced?_ _How would the functionality be exposed and how can it be consumed?_ ### Acceptance Criteria GivenWhenThen format (https://martinfowler.com/bliki/GivenWhenThen.html) **Given** I have a ... **when** I execute ... **then** ... will happen. ### Notes ### Tasks - [ ] <!--Add any tasks relevant to the current feature request --> - [ ] Unit Tests added - [ ] Test Cases defined