model runs: extend use of enums for variables to every kind of mirrorable

This required getting rid of the storage of interface globals in the Observer
mirrorable, because the number of those varies from model to model.

They are not going to be needed anyway because we are going to mirror the
widget values as separate mirrorables anyway (that was the original purpose
of having interface globals there, but it would not have worked because some
extra information is needed, e.g. slider constraints)

Cherry pick and conflict resolution of f3cb262
model runs: mirror observer perspective
get rid of MirrorableWidgetValue

It was used for mirroring monitor values in the modelruns branch.
Modelruns got rid of it in favor of a different set of widget mirrorables
now hosted in the review package.

As far as I know, headless/TT has no use for it either.
Remove obsolete TestMirroring file
Merge pull request #525 from NetLogo/watch

Serialize variables relevant to `watch`