internal/router: implement PUT for meta endpoints

This also adds the notion of a multi-error, adding a new field to the Error
type.
I suppose Query and Fields are only used as part of the GET machinery, not the PUT one.
If that's the case, perhaps we should clarify that here.