core: Respect non-error aria-describedby

To follow up from my previous pull request at https://github.com/jzaefferer/jquery-validation/pull/1083 I've improved this solution to better respect existing aria-describedby that do not refer to error labels.

Previously jquery-validate would monopolise this field without regard for aria-describedby references which may point to valid descriptive elements related to the source field (such as captions, right titles, or so on).

It was pretty trivial to reduce the scope of errorsFor to select only error elements, and update showLabel to merge new error IDs with the existing aria-describedby rather than replacing it.
> Why is that?

If we remove the reference, then we could possibly end up with an element left in the DOM without any reference between it and the validated field. I suppose we could solve this problem by having a separate reference somewhere else on the input field. a `data-error-id` field perhaps? If a valid field is subsequently invalidated, then the value of this field could be substituted back into the `aria-describedby`. How do you feel about this kind of a solution?