Use source index to get completions from current package

NOTE: This could use some review as I'm not fully aware of the most 'idiomatic' ways of generating R objects / lists from C++ code.

This PR generates autocompletions from the source index when working on a package project.
You want to figure out if the script the user is editing in is part of the package build target. You can do this using the function `module_context::isRScriptInPackageBuildTarget`. You can then call `module_context::packageNameForSourceFile` to determine the actual name of the package. BTW, the latter could also be used to provide the correct completions for packages that aren't the current build target (but for that you'd have to look inside the namespace rather than relying on the source index since we only have a source index for the current build target)