[SoupAddress] make _resolve_async idempotent, document/fix thread-safety
Document that _resolve_async() can be called multiple times, but only
from the same async_context, and _resolve_sync() can be called
multiple times from different threads. Note that _get_name, etc, may
misbehave in the presence of multiple threads.
Change _resolve_async() so that multiple attempts to resolve the same
address will result in only a single GResolver call, and they will all
complete at the same time.
Part of https://bugzilla.gnome.org/show_bug.cgi?id=598948