[WIP] Refactor MSM

`time` `warnings` and `ensure_type` are unused