Ensuring types are correctly bracketed
Switching to template-haskell for core lenses
Using Control.Lens types
Re-generating with Control.Lens types