* Connection to mochad occasionally stalls on RPi and CM19A. Reconnect one switch send command.
* Formatting and exception hanling fixes
* Moved import inside the method. Logging outside the try-catch.
* Tailing whitespaces.
* MockDependency on pymochad in unit tests to resolve exceptions
* patch pymochad MochadException in unit tests to resolve exceptions
* patch pymochad MochadException in unit tests to resolve exceptions
* cleaned unused import
* lint issue fixed
* pylint issue fixed
* No longer require pyunify during tests
* No longer require cast during tests
* No longer required dependency for tests
* No longer require pymochad for tests
* Astral is a core dependency
* Avoid having to install datadog dependency during tests
* CMUS test doesn't test anything
* Frontier Silicon doesn't test anything
* No longer require mutagen
* Update requirements_test_all.txt
* Remove stale comment
This commit adds a new component for communicating with mochad[1] a
socket interface for the CM15A and CM19A USB X10 controllers. This
commit leverages the pymochad library to interface with a mochad socket
either on a local or remote machine. Mochad is added as as a generic
platform because it supports multiple different classes of device,
however in this patch only the switch device implemented as a starting
point. Future patches will include other devices types. (although
that's dependent on someone gaining access to those)
[1] https://sourceforge.net/projects/mochad/