Fix LibjingleTransportFactory to refresh STUN/Relay.

Previously chromoting host would get relay info only when started. Relay
token expires within several hours, which means relay session creation would
always fail from the host running for longer than several hours, and that
makes connection impossible in some configurations. Moved code that
gets Jingle info to LibjingleTransportFactory and it's responsible for
refreshing relay token every hour.

BUG=318897
R=rmsousa@chromium.org

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=240926

Review URL: https://codereview.chromium.org/98173006

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240997 0039d316-1c4b-4281-b951-d872f2087c98
Merge 203436 "Unregister for notifications before calling observ..."

> Unregister for notifications before calling observers in BC destructor.
>
> The BackgroundContents code notifies listeners in its destructor so they know the object is going away. It previously also would free itself in response to certain notifications. In rare circumstances, sending out its going-away notification to its observers would trigger a notification that would cause it to try to free itself again. To avoid this, the code now stops listening for notifications before calling out to its observers.
>
> BUG=237781
>
> Review URL: https://chromiumcodereview.appspot.com/16173007

TBR=atwilson@chromium.org

Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=203449

Review URL: https://codereview.chromium.org/16263002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240998 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 240998