Fix _.before() and _.after() used in an OOP style

When using the `_.before()` and `_.after()` with the OOP style wrapper, it does not work.

Ex.

```javascript
var func = _(function() {
    console.log("I should be executed on the third call");
}).after(3);
```

I have added tests that show this failure and a special exception to handling these specific functions as they seem to be the only outliers that do not conform to the standard argument ordering.