Fix test case generation (see #23 #31).

The old code never generated lambda, Pi, or ifzero expressions,
because the second half of arbitraryTerm was parsed as:

  if size >= 2 then
    ...
  else
    ([] ++ if size >= 3 then ... else [])