exported functions are also mocked in the package environment

- as returned by `as.environment("package:<pkg-name>")`
- only if the package is loaded
- this applies to both qualified and unqualified mocks (i.e., `with_mock(acf = stop, "stats")` and ```with_mock(`stats::acf` = stop)``` both mock the `acf` function correctly)
- support new syntax ```with_mock(`stats:::add1.default` = identity)```, but internally no distinciton is made between two and three columns
- tests

Fixes #168.
Now that I look at this, are you sure you need `do.call()`? Or is that just to protect against an R CMD check warning? If so, I comment would be helpful.