Fix some bugs in comprehension fusion.

- Inline single-row generators of shape Pure(StructNode(_)) into the
  projections of Bind nodes in convertToComprehensions. If we rely on
  doing it in fuseComprehensions it may be too late: If that generator
  returns an aggregate, it will have already been lifted into the parent
  comprehension, making the single-row character unrecognizable.

- Assign correct types to lifted aggregates and inlined aggregates.

Fixes issue #753. Test in CountTest.testJoinCount. Review by @cvogt