BUG: shape was not being passed to sparse constuctors

Discovered by @teravest. Basically, shape was not being passed to the sparse constructors which meant that the following was not a valid table:

```
[1 0 0
 0 0 0
 0 0 0]
```

As the data only had a single nonzero element in 0,0, so scipy assumed the shape of the matrix was 1,1.