the space-leak in decoder_mutation was the array indices! uses <2GB now

  * the fix was to manually fuse the mapM_ and range in forEta

  * while core diving, I noticed some other ways reduce allocation and
    eliminate dictionary-passing via some INLINEs

  * also wrote a custom, deforested and short-circuiting parity check