msfconsole 'edit' command

Useful for quick editing a module during development / bug fixing. I
don't really see a security issue with running a command defined in the
user's VISUAL or EDITOR environment variables;  if the user can run
msfconsole to begin with, there are better ways to get into trouble.
Use Rex::Compat.getenv instead

Also, this would deprecate out the editor plugin.
Remove the editor plugin.

Sorry, @jcran, didn't see that this was available. Turns out, this
feature is almost identical to the editor plugin, so this effectively
promotes 'edit' to a first class command.
Methodize the editor variable as local_editor
Add a few more modules.
Add @brandonprry's seven new modules

Already reviewed privately, no associated PR.
Update references for FOSS modules
Typo fix
Un-dupe References for ispconfig
Move OpenBravo to aux module land
Reorder refs for some reason.
Land #2593, updated refs for @brandonprry's stuff
CVE update for vtiger issue
Land #2595, CVE update for vtiger_php_exec
Resplat new WMI module
VISUAL is okay. Also doesn't need to be a path.

I don't believe this opens an untoward attack vector -- if your attacker
can run Metasploit locally, you have much bigger problems.
Land #2596, resplat new WMI module
Land #2504, @todb-r7's edit command for msfconsole