forgot one bad call to pack_coeff
PATCH: brought over bug fix from nakul
replaced static array scratch mem with a contig local array of the same size.

todo:
  more fine grain control over the scratch size.
  less complicated reinsertion of scratch into main distributed arrays.