should we make `shape` be an optional argument?

```
def csrtodok(csr, shape=None):
    shape = shape or [len(ia) - 1, max(ja)]
    a, ja, ia = csr
```

Then maybe `[A, JA, IA], shape` can be returned from doktocsr.