fix has_nova
automatically use novaclient plugins

no more having to specify what module the extension should overwrite
kwargs should be vm_

this allows for specifying stuff to configure novaclient plugins, in the
cloud.profiles, such as public: False service_net: True
pylint fix
clean up kwargs
only load functions and hooks once

novaclient doesn't check if it has already loaded extensions, so we only
want to run this ones, the first time that it is loading, since we
are manually overwriting the classes in memory anyway.
dammit
Merge pull request #15262 from saltstack/bp-15165

Backport #15165 to 2014.7