I believe we need to hold a reference to the memmap object in the `DatasetProxy` object.

First: the symptom: If I `del ds` in `testing/test_prediction.py` as soon as I'm done with it (I.e., after calling `make_standard_stages`), it segfaults when you try and run the prediction.
(I can get this to happen consistently under python2, not sure about 3. At some point we will need to carefully check this is being refcounted and released at the right time or a long running daemon is going to have trouble.)

I thiiink (from attempting to read the C), Cython will hold a reference to the _DatasetProxy object_ in the closure of `f` (in addition to the data pointer itself).

Should we have the DatasetProxy object hold a reference to the memmap python object?