refactoring smarthome.py, cleanup arguments, interactive shell