Added Bluez 5.x support

    New cmake option PSMOVE_BLUEZ5_SUPPORT.
    If it's enabled, linux_bluez_register_psmove() calls
    linux_bluez5_register_psmove(), which fills /var/lib/bluetooth
    according to Bluez 5.x rules.
    Added automatic detection of init system type (systemd, upstart,
    sysvinit) and used appropriate bluetooth daemon start/stop commands
    for each type.
Fix inline function definition

Compiling the library according to the C99 standard (which, for instance, is clang's default setting) would fail due to an undefined reference to "psmove_decode_16bit" when linking against libpsmoveapi. This fix makes sure that psmove_decode_16bit() is always resolved in the single translation unit that uses it, while keeping the "inline" hint.
Fixed according to review comments.

Replaced multiple malloc-strcpy-strcat calls with
single function bt_path_join().
Corrected /etc/os-release handling.
Merge pull request #104 from nitsch/fix-inline

Fix inline function definition
Merge pull request #102 from MooseTheBrown/bluez5_support

Added Bluez 5.x support