**Describe the solution you'd like** Add type hinting/checking via mypy. - [ ] Update all code to use types (if possible) - [ ] Add mypy workflow to do static type checking in pipeline