up to date
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'module_java_jre17_provider_skeleton' of https://github.com/matthiaskaiser/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Merge branch 'master' of https://github.com/rapid7/metasploit-framework
Add spec for elf mips* and exe-only formats

Also a rudimentary test for win32_rwx_exec
Clean up exe spec a bit
Add more supported formats to exe generation

- Already supported, just added calls to the the right methods in
  the .to_executable_fmt method:
  - Linux armle, mipsle, and mipsbe
  - Mac arm, ppc

- makes the two (!?) copies of block_api for windows match more closely
  with the source used elsewhere. This is still needs to be refactored
  to get rid of the duplication.

- Get rid of some of the logic in msfvenom duplicated from Util::EXE
Refactor msfvenom into a class

Also adds some minimal testing... which is super slow because it doesn't
cache the framework object across tests.

Conflicts:
	msfvenom

Hopefully picked up all the relevant fixes from #2027
More msfvenom refactoring

* Make @framework into a caching method instead

* Allow instantiating with streams for where payloads and comments
  should go. This allows us to capture std{out,err} when running specs

* Specs are still woefully under-representative

* Get rid of all the calls to exit
Add spec for #dump_nops
Merge branch 'master' of https://github.com/rapid7/metasploit-framework