Test compute numpy

This is almost ready for merging. I have one problem though, with the function on line 49:

```
@dispatch(BinOp, base, np.ndarray)
def compute_up(t, lhs, rhs, **kwargs):
    return t.op(lhs, rhs)
```

Had a lot of trouble figuring out how to call this function, figuring out what it wanted for inputs. Any feedback on this would be appreciated. 
Also, if variables like this are only going to be used once then it's better to define them where they are used.  This both cleans up the global namespace and helps people who need to understand the test what is going on.