Add V-list scaling when using different kernels

- Add source and target vector scaling for V-list when using different
  kernels for M2M, M2L and L2L.

- Check if matrix has zero size for GEMM and pinv. This fixes MKL/BLAS
  warnings about invalid parameter.