Introduce a new BlockStmt::blockTag, BLOCK_C_FOR_LOOP, to distinguish BlockStmts used in the init/test/incr clauses of a CForLoop
Add verify() extensions for While/For loops
Update CollapseBlocks on ForLoop and CForLoop to remove the extra check on the blockInfo
Add the BLOCK_C_FOR_LOOP blockTag when a CForLoop is being constructed.  Update the verify() method to check for this tag
Addressed m-lammps.valgrind timeout in nightly.
Update expandRecursiveIteratorInline to construct a BlockStmt from the body of a ForLoop rather than using a degenerate ForLoop
... and removed .valgrind.timeout
Merge pull request #883 from vasslitvinov/fix--m-lammps.valgrind--timeout

Addressed m-lammps.valgrind timeout in nightly.

* By reducing the number of atoms from 3200 to 320.

* I hope 320 atoms are likely to exercise the same code paths as 3200 atoms.

* Changed a couple of consts in the source to be 'config const'.
  I am using only one - I changed the others just in case for the future.

* Added .execopts to specify the number of atoms.

* The input file, ljcut.in, is unchanged, the remaining atoms in it
  will be unused for valgrind runs.

* Adjusted .good based on what the program is producing today
  for this number of atoms.
  (I do not know how to verify correctness of this output.)

* The large timeout we had for valgrind should no longer be needed
  - the test ran in 23 seconds on my machine - so I am removed the .timeout.

Recall that m-lammps.valgrind.chpl is a symlink to m-lammps.chpl.
I introduced it earlier so that we can have different settings
for valgrind than for correctness testing.
Add a convenience version of copyBody() that does not take a map
Update inlineSingleYieldIterator to replace a ForLoop with a well-formed BlockStmt
Revert "Use MAX_LOGICAL with some performance tests"
Merge pull request #884 from chapel-lang/revert-854-performanceChanges

Revert "Use MAX_LOGICAL with some performance tests"

Decided running both MAX_LOGICAL and default too complicated
right now and that default is better, so revert.
Merge pull request #885 from noakesmichael/iter-3

Continue to cleanup ForLoop and CForLoop

1) Added verify methods to While/For loops to ensure that these rely on the underlying BlockStmt in the
expected way

2) Added code to lowerIterators to construct new BlockStmts rather than converting a ForLoop to a degenerate ForLoop by removing the blockInfo.

3) CForLoops currently rely on BlockStmt as part of the implementation of the init/test/incr clauses.
Unfortunately this has an unintended interaction with deadExpressionElimination; these clauses
often appear to include dead "Statement Expressions".  Add a new blockTag, BLOCK_C_FOR_LOOP
and ensure this tag is applied when CForLoops are being constructed.

Compiled: STD clang/darwin, STD gcc/linux64, LLVM gcc/linux64
Tested: paratest --verify
Reviewed: None but discussed the deadExpressionElimination with Elliot at some length