**Interface changes**: one core plugin API change, no public API changes.
Introduced a breaking function signature change to `errActions.newThrownErr` action creator (from `(err, action)` to `(err)`) and `err_new_thrown_err` action payload (stopped nesting error content under `error` key in payload, now the error _is_ the payload).
- Feature: added error catcher for statePlugin interfaces; prevents errors in plugin code from crashing entire application instance (via 4067)
- The only downside to this is that some errors are now a bit harder to trace! Set a breakpoint at `console.error` and walk down the stack to see what's going wrong.
- Feature: display error content when definition/config load fails (via 4069)
- Feature: display parameter enums, defaults, and examples when not in Try-It-Out mode (via 3977)
- Improvement: added `hasOwnProperty` checks to a handful of `for...in` loops (via 4043)
- Improvement: now using nginx `location` to set Docker base url instead of moving things around the filesystem (via 4073)
- Improvement: brought parameter model property description styling in line with styling for.... everything else (via 4075)
- Bugfix: check for `Promise` on global/window object, which makes IE11 a very happy browser (via 4077)
- Housekeeping: used `zopflipng` to compress PNG assets in repo (via 4037)
- Housekeeping: added maintainer documentation for PR merging workflow (via 4076)