Don't try to be too helpful

John cares not one whit how many colons are in a hash line, only that
there are enough for the format (at least 2 for regular /etc/passwd, at
least 3 for NTLM, etc). So there is no simple way to programmatically
determine whether a password had a colon or there was just an extra on
the end of the original hash line.

[MSP-9778]
See #2515
Refactor jtr_linux copy pasta

Move it to a nifty method
Micro optimizations for jtr_linux
More refactor on jtr_linux

Reducing complexity in `run` makes modules easier to read
Add password colletion post module for Firefox shells.
Fix wrong DisclosureDate.
Add base64 to prevent potential encoding issues.
Fix little bug when using msfencode and exe-only
When arch is not defined, arch is null so it crashs.
It should be 'x86' by default
Land #3253, Fix to exe-only format

Lands pull request to fix nil issue with
the to_winpe_only method call in Msf::Util::EXE
Land #3228, JtR colon Seperation
Land #3246 - Firefox Gather Passwords from Privileged Javascript Shell