Basic AST construction for Cilk for statements

- capture non-loop control variables by references.

- move Capture class from CilkForDecl to CilkForStmt. This change
  is based on the fact that the number of captures is unknown while
  entering a Cilk for capturing region.

- enable empty body warning for Cilk for loops.
Check for inconsistency between loop increment and condition
- Evaluate the increment value if it is an integer constant and calculate stride
- Check the sign of the increment value against the direction of the comparison
- Can handle cases like i += -1 or i -= -1
- Handles overloaded operators (and assumes that they are implemented correctly)
- Do nothing when the stide cannot be determined at compile-time