Fix shapes update

Attempts to recover from errors by reconnecting the editor. If that's not possible, turns off everything so the user can trigger it again manually.

These are invalid shape declarations and the editor will turn off:
- `circle(px at 50% 50%)`
- `circle(50% 50%)`
- `circle(50%, 50%)`

This is a valid shape declaration: `circle(50% at)` but it crashes the browser due to an [implementation bug](https://bugs.webkit.org/show_bug.cgi?id=130366) in the browser.  The issue has been fixed, but it will take time for the fix to trickle down into Chrome Stable. That notation will crash the browser before the shapes editor has a chance to load and attempt to catch it.