Debugging

Bugs fixed:
- The rule's condition was not checked before rule application.
- AstRule to Rule conversion did not re-type variables occurring in
  the condition.
- In RunProgram, LoopedComSeq did not terminate the loop correctly:
  it returned Failure instead of the input graph state.
- The empty LHS was not handled in matchGraphs.
- Partial node morphisms were generated for rules with root nodes.
- Partial edge morphisms were generated in some cases.