Make drop combinator work with lazily-resolved parsers

Example from #7:
```javascript
var pr = require('packrattle');
function fixParser(parser) {
	var p = function() { return parser(p) };
	return pr(p);
}

var test = pr.drop(fixParser(function(a) { return pr.string(" ") }));

pr.consume(test, " ");
```
```
.../node_modules/packrattle/lib/packrattle/combiners.js:104
    return implicit(p).onMatch(function(x) {
                       ^
TypeError: Object function () { return parser(p) } has no method 'onMatch'
    at drop (.../node_modules/packrattle/lib/packrattle/combiners.js:104:24)
```