Every 3d view should know of all its enabled overlays + settings.
Some overlays are general (will always present), other overlays are only present depending on the edit mode the workspace is in. Other overlays are controlled by blender programatically.
There is an overall checkbox that control if overlays will be rendered at all (the inverse of current Only Render)
- Create a global list with all overlays (RNA)
- Create storage per 3d view (DNA/RNA)
- Create an menu for activating the overlays
- Show overlay menu in the 3d view.
- Modify Draw Manager to render the active overlays only.