added mkFunnel
added mkFirstLastPipe
use M mul/add for J*K dot product computations
added mkFunnelPipes and mkUnfunnelPipes
make mkFunnelPipes/mkUnfunnelPipes consisten with  mkFunnel/mkUnfunnel
use mkFunnelPipes for accumFunnels
use mkFunnelPipes for abFunnels
split the accumOutFifo
split a couple of rules
Revert "new way" matrix multiply to the version before funnel/unfunnel pipes
use mkSharedDotProductServer to reduce number of MACs