Conv gemm non-square kernel support

This add support to non-square kernels. It passes all tests.