Implementation of dominators and post-dominators. Uses the subgraph API, so dominance can be done on arbitrary subset of IR graph (currently just done on control subset).
Implement a generic subgraph extraction API. Can extract an arbitrary subset of the IR graph to do further analysis on. Currently, extracting the control subset of the graph is used for dominance.
Add thread-ID and collect nodes to simplify fork + join nodes. Is necessary for future verification of phi + fork + join usage.
Update DESIGN.md and add IR.md for a more thorough documentation of the IR.