Breaking change: Use device class in unique id if entity has no name.
Issue #871. To make use of Home Assistant provided translations, it
would be good to remove as many names from entities as possible. To
distinguish between multiple entities of the same type without names,
we need to use something other than the name in the identifier.
This will break existing configs, so a migration will need to be
written if possible to transfer entities to their new id.