fixed the bug of multiplying spartan.matrix with a numpy vector 

This bug can be reproduced by : 
```
A = expr.randn(2, 2).force()
v = np.random.randn(2, 1)

# It will report matrix align exceptions. 
expr.dot(A, v).force()
```

In general, if the tile doesn't own the entire row, this will cause the exception.
Like the example above:
The tiles look like (0,1; 0,1), (0,1; 1, 2), (1,2; 0,1), (1,2; 1,2)
When we try to do dot production with the tile doesn't own the entire row, the shape is mismatched.

Fixed this by letting the tile starts with first column does the production. Otherwise skip and return None.