text: Title: Make `InsertionNoiseModel` serializable 
  Body: **Is your feature request related to a use case or problem? Please describe.**
  Currently, `InsertionNoiseModel` is not serializable, while `NoiseModel` is. It would be useful if `InsertionNoiseModel` was serializable as well.
  
  Calling `cirq.to_json(noise_model)` where `noise_model` is a `InsertionNoiseModel` currently raises the following error:
  
  ```
  ---------------------------------------------------------------------------
  TypeError                                 Traceback (most recent call last)
  
  [...]
  
  File /usr/lib/python3.10/json/encoder.py:179, in JSONEncoder.default(self, o)
      160 def default(self, o):
      161     """Implement this method in a subclass such that it returns
      162     a serializable object for ``o``, or calls the base implementation
      163     (to raise a ``TypeError``).
     (...)
      177 
      178     """
  --> 179     raise TypeError(f'Object of type {o.__class__.__name__} '
      180                     f'is not JSON serializable')
  
   
  
  TypeError: Object of type InsertionNoiseModel is not JSON serializable
  ```
  
  **Describe the solution you'd like**
  Being able to call `cirq.to_json(noise_model)` where `noise_model` is a `InsertionNoiseModel`.
  
  
  **What is the urgency from your perspective for this issue? Is it blocking important work?**
  <!-- Please choose one and remove the others -->
  
  P1 - Not urgent but would be nice to be able to serialize these noise models
  