Augmented completions for arguments, packages

NOTE: Not ready for merge, but putting this up as a PR for now.

The sum of this PR: we now keep track of the current 'active' argument when completing functions, so that we can provide argument specific completions. Right now, we use it for:

- `"pkg"`, `"package"` -- package name completions.

This implies that we get better completions 'for free' in e.g. `browseVignettes`, `packageVersion`, and so on.