use our own version of StatefulProtocol code
avoid reentrant problems (optimize later)
twisted sync_async: return missing result
remove debugging prints
simplify VRTClient expectingData