Added Ouimeaux Error Handling

Added error handling to overcome a bug that arose from Ouimeaux becoming
unresponsive. The fix was to add a timeout to the wemo command, clear the
cache, and then repeat the command to try again. If this fails, HAUS will
attempt to use the previous_condition to set the current_condition to make the
assumption the switch hasn't changed state. If there for some reason is no
previous_condition (eg first run of the script) then the script will exit with
an error instead of hanging like it was previously.