[bluetooth] Local name handling fixes

Fixes related to local name handling.

A previous bugfix introduced a timed out explicit request for
local name, instead of asking it right away; the timeout needs
to be cancelled when local name is received from the controller
before the explicit query is made.

Also, make sure that adapter has a name even if it's to be turned
off before write local name command completes.