Add combinators for restricting effects, don't allow forever to return.

  Add the noEffects, noReturn, and noAlloc combinators, to make it easeir to
restrict the presence of effects when desired.  For example:

    noReturn retVoid

will give a type error, as return effects have been disallowed in that context.