Avoid using NBNxM kernel enums when possible
Where possible kernel enums in conditionals are changed to checks on cluster sizes. This makes the NBNxM module more flexible.
Also replaced explicit sums over SIMD registers with a function.
Edited by Berk Hess