OK, big mistake. CPU prefetch object should not be templated by size.
some member functions need to NOT be const
prefetch: more split out, fixup. remove alt constructor, one calling the
other seems to cause weird C++ constructor problems.
split out new code
split out code