Fixed #22915 -- Document backward incompatible changes in the Validation...

...Error constructor.

This patch also fixes update_error_dict to better handle the use case described
in this ticket, previously the type of the provided container could be lost in
some conditions.
You mean even with the workaround in place there is a problem with `ErrorDict()`? `self._errors = e.update_error_dict(self._errors)` effectively passes an `ErrorDict()` instance so it should be covered by the test cases above.

Despite appearances the root of the problem is not that `update_error_dict()` behaves differently, but rather that `e.error_list` is a `list` rather than the `ErrorList` given to the `ValidationError` constructor.