Improved state restoring.

This comes with a downside: we will be unable to restore states the first time you start 0.84. This means that on upgrade to 0.84 any automation that doesn't have an initial_state defined will be disabled.

mqtt

Mqtt light refactor

ihc

Support for multiple IHC controllers added. Manual IHC device configuration must be moved from platform sections to controller configuration section under the ihc component section.

light.lutron

Lutron: Change device_state_attributes() to use lowercase snakecase (Rename 'Lutron Integration ID' to 'lutron_integration_id')

sensor.systemmonitor

Remove "since last boot" from systemmonitor sensor, use last_boot instead.

camera.push

Use a webhook to send data to push camera

homeassistant

Call services directly. Automations and scripts will now stop executing when a service call fails. The service_executed event is no longer being fired when a service is done.

sensor.seventeentrack

Fix issues with 17track.net sensor names. See PR for details.

sensor.rtorrent

rtorrent: Changed the returned states of sensor.rtorrent from Up/Down, Downloading and Seeding to up_down, downloading and seeding to reflect the guidelines. Hence by automations relying on the state of this sensor should be updated.

blink

Blink alarm control panel now inherits the name of the actual sync module rather than defaulting to blink_sync

climate.toon

Fix toon operation mode to follow our climate standard so it will work with Google Assistant / Alexa.

waterfurnace

Waterfurnace: the unit parameter is removed from config.

rainmachine

RainMachine: configuration.yaml format has changed to add support for multiple RainMachine controllers

fibaro

Fibaro: the id attribute has been renamed to fibaro_id

notify

Remove Instapush notify platform