changing kernel to allow multiple blocks, and respect the limit __shared__ per block