Bluetooth: Clening up BT service in error cases.

If the statemachine didnt get response from stack in
8secs for any reason during BT off time, state machine
restores the BT state to on, which is wrong.
Restoring the BT state by restarting the service.

CRs-fixed: 528656
Change-Id: Iac6b1b4ba8ea0b5bd34bae5d672450e4a93fe658
(cherry picked from commit e6dc9d4bc326c01cc2edacc3150811430633946c)
(cherry picked from commit 7917ad6ed8a3919d110907401fff0f7a4bf6df7b)
(cherry picked from commit f2920dfe189e469061c8941379388905556fda76)
Bluetooth: Update the Bluetooth state in STOP_TIMEOUT case

Bluetooth adapter state is getting updated with turn off
but the same intent is not getting broad casted to the
application, so it hanged in turning off state.

Broadcasting the TRUN_OFF intent in STOP_TIMEOUT case.

CRs-fixed: 534372
Change-Id: I4f05a946e56a87ff62c6e505b6bfbfbfe7c8c951
(cherry picked from commit da24eec61839f23bae7d4dff53053fbf4888189c)
(cherry picked from commit 98eee37d49c214397c2e54e275d83f7feb0abc56)
(cherry picked from commit 1f139390de9d1db63040a21161e76af668cd81d2)
Bluetooth: Setting bluetooth.isEnabled on BT state change

btwlancoex process starts based on the bluetooth.isEnabled
property which is used to indicate Bluetooth on/off. If BT is
already turned on before rebooting the phone. btwlancoex process
does not start, As  property is not getting set, Even though
bluetooth is turned on successfully after rebooting phone, if
bluedroid stack is enabled. Setting the property from adapter
state,Once BT state change(ON or OFF) is recieved from
abstraction layer in bluedroid stack.

Change-Id: I511c8213f649d797aa012c747001ed6985a2b15d