Implement dump(N) to return first N frames of data.

Closes #146

Also adds tests to check that `dump()` and `dump(N)` return data for the expect number of frames.
I don't follow. Was it meant to be doing different that what `dump` in the superclass is doing? Is it OK that I remove it in this PR?