Add Apply case to ScalaCompletions. Fixes #1001218

This allows scalaCompletions to handle method invocation completions.
Also refactored scalaCompletions to tidy things a little.
remove unneeded comment
review comments - make stuff options
give correct start point in completion

for calls to methods in scope
remove val in for