Should/could the structs in this project be made `readonly`. I think they should. All primitive struct types from Microsoft are readonly. Readonly structs have a lot of advantages where there are no defensive copies for `readonly fields`, `in parameters`, 'readonly locals + returns`.