Remove hard-coded references to candidates

It seems wrong to hard-code the candidate names when they are
available from the server.  It also makes it hard to add new
candidates.  The scripts pretty much work with a really small
change to gvm-use.sh, but the tests also rely on the PATH being
set, so there is a change to the tests as well to make them pass.
Move GVM_CANDIDATES building code to init script
Fix bug in PATH accidentally introduce in previous rebase
Cache candidates per service and add option to flush