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.
Hi Russ, I just added a test case of `ValidationError({'code': ErrorList(['error message.'])})` and that works as excepted.

I'm a bit confused with the test case given on Trac, the signature is `update_error_dict(self, error_dict)` but you are passing an `ErrorList` as argument. It may have worked before but IMO that was by accident.