Avoid reentrancy issues while deleting complex objects in forwarder2.

The DeviceListener/HostController stored in maps of linked_ptr<> may invoke a
callback on deletion that could possibly access the map (while the erase() is
happening). This doesn't seem to happen currently but nobody would enjoy such a
debugging session in the future.

BUG=313809
R=digit@chromium.org

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

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