Python3 compatibility for hidconsole

`type(u'')` is 'str' in Python 3, it was `unicode` on Python 2 (with
`unicode_literals` from `__future__`).
hidpp10: split reg07 (battery) parsing so it can be reused
Merge pull request #33 from Lekensteyn/py3-hidconsole

Python3 compatibility for hidconsole
Refactor battery info update

- `self[BATTERY_STATUS] = BATTERY_STATUS[battery_status]` should be:
  `self[BATTERY_STATUS] = _hidpp20.BATTERY_STATUS[battery_status]`, otherwise
  the battery status would be a single char from the string `battery-status`.
- Make `_hidpp20.BATTERY_OK` check against strings instead of a number.
- Move setting battery information to a separate function, `set_battery_info`.
  This prepares for notifications when a battery error/warning occurs.
Make read_battery use set_battery_info

This allows battery readouts to generate warnings and debug logs for a given
status and level.
Process reg07 battery notification
Merge pull request #34 from Lekensteyn/battery-notif

Refactor battery setter, register 07 processing