Bug 903422: Cleanup GetPropertiesInternal, r=echou

This patch moves some logic from GetPropertiesInternal to a separate
function. This will simplify the following patches a bit.
Bug 903422: Replace AppendDeviceNameRunnable by non-blocking implementation, r=echou,gyeh

AppendDeviceNameRunnable currently block on the Bluetooth command thread
for a DBus reply.

This patch refactors the code to not block during the DBus call. The classes
AppendDeviceNameHandler and AppendDeviceNameRunnable are being removed, and
the DBus interaction is done directly in the DBus thread.
Bug 903422: Cleanup UnpackPropertiesMessage, r=echou

This patch cleans up the various funtions that are related to
UnpackPropertiesMessage.

The original function UnpackPropertiesMessage now returns success
or failure as a boolean value. All other functions have been
into this one. And the code has been cleaned up to be more readable.