initial commit of PySide-based GUI
updated to support blocking and non-blocking recv()'s