improve query execution state model
change Channel class to use QueryExecution as primary node type
set states directly via setState in QueryExecution
send PROCESSED event directly after state changed to DONE