Fixed NPE and other issues caused by delaying bluetooth enable

due to the following problem:

On certain devices, the bluetooth name and address are null if BT is not enabled.  We had methods to handle this, but the method that safeguarded the name relied on the provided getAddress method, not our safe method.  Additionally, once bluetooth is enabled, we need to make sure we update our internal structures that rely on it.

Fix #314