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.
@gaborcsardi: Right. How did you learn about that? ;-)