Vagrant completion updates

Improved vagrant completions for some commands to avoid spurious completions, and added completions for some missing Vagrant commands.
This could be simplified to

```fish
function __fish_vagrant_using_command
    set -l cmd (commandline -opc)
    set -q cmd[2]; and test "$argv[1]" = $cmd[2]
end
```

Note: `set -l` for `cmd` so we don't overwrite any global/universal variables with that name.

`set -q cmd[2]` is a quick way of testing to ensure `$cmd[2]` exists, and then we quote `"$argv[1]"` because we didn't test to make sure it exists and want to make sure we pass something to `test`; since we already verified `$cmd[2]` exists we don't need to quote it.