Got started with a new class to replace the check-running script.
With the BrewPiProcesses class, instances of BrewPi can see each other and determine if their would be conflicts in running concurrently. They will also be able to send a quit signal over the socket or a sigterm to the PID
Did some work on a socket wrapper, added documentation strings
Replaced accept function of BrewPiSocket to read function, which also reads the message from the socket and splits it.
Now working: finding another instance of brewpi and sending it the stopScript message over its socket.
Added quit and kill functions to BrewPiProcess. Added more docstrings
Check on startup if other instances of BrewPi are running, exit when there would be conflicts.
Added command line options for handling processes:
* default behavior is to exit when a conflicting instance is running
* --quit sends a quit message to other instances
* --kill kills other instances with force
* --force closes all other instances and keeps this one
fixed BrewPi process management for linux:
* An additional check that the process name is python (had a false match when startint brewpi with sudo -u brewpi python brewpi.py)
* Removed getting the working dir of the processes, needs root permission
* Except and print permission error when killing process
Replaced existing check-running script by command line option in the script itself.
The CRON job can now just start the script with the option --dontrunfile