too many arguments most of them optional, what about using a nice options object ?

I also prefer `callbackArgs`, it's clearer. And then we can pass it in each callback.

What about:
```javascript
function mm_getMgs(opts) {
  var stepCB = opts.stepCallback,
      filter = opts.filter,
      invert = opts.invert,
      endCB = opts.endCallback,
      optionalArgs = opts.callbackArgs;
```

Also add a comment explaining what all these options are from.