edit todo
separate Check from CheckQ
separate Q from Expression
separate Q from Selection
SelectionQ: Name -> ... to IORef Int -> ...
separate Q from Definition
separate Q from Peg
tribial: delete one empty line
remove name shadowing: peg -> pg
separate Q from ReadFrom
separate Q from PlainSelection
edit todo
separate Q from STPeg
separate Q from PegFile
edit todo
not write list function etc. if not used them