Merge pull request #3 from kernelsmith/landing/4063-DRYer

modernizes & DRYs session/job ranges from kernelsmith
Minor fixes and status update

Minor tweaks after the PR from @kernelsmith

Remaining items:

1. Handle empty session IDs correctly, for example 'sessions -d' or 'sessions -k'
2. Find a method of explaining the range options in the help text
3. Retest all changed code areas
4. Edit PR Summary to reflect changes to the scope
rolling back a change
Move db bundler group to metasploit-framework-db.gemspec

MSP-11578

This will allow Metasploit Pro to use the
metasploit-framework-db.gemspec to ensure it has the correct version of
gems that were previously only in metasploit-framework's Gemfile and so
weren't being checked for version compatibility when Pro used
metasploit-framework.gemspec.
Explicitly require 'metasploit/credential' and 'metasploit_data_models'

By putting the db group into the metasploit-framework-db.gemspec,
bundler no longer automatically required 'metasploit/credential' and
'metasploit_data_models' because gems, such as metasploit-framework-db,
are expected to explictly require their dependencies.
Move pcap bundler group to metasploit-framework-pcap.gemspec

MSP-11578

This will allow Metasploit Pro to use the
metasploit-framework-pcap.gemspec to ensure it has the correct version of
gems that were previously only in metasploit-framework's Gemfile and so
weren't being checked for version compatibility when Pro used
metasploit-framework.gemspec.
Add metasploit-framework as dependency of metasploit-framework-pcap

MSP-11578

Any of the optional depenency gems should depend on the minimal
metasploit-framework as it supplies the versioning information.
Update Gemfile.lock

MSP-11578
Check module references
Land #4126, rm Travis testing for 2.0
metasploit-framework-full.gemspec

MSP-11578

metasploit-framework-full depends on the minimal metasploit-framework
and all optional dependency gemspec: metasploit-framework-db and
metasploit-framework-pcap.
Add save-as feature

The tool produces A LOT OF results so it's really painful to manually
copy and paste and to be able to use the data. So it should automatically
save.

Tagging the issue here because I forgot to do it:
Fix #4039
Revert "Update Gemfile.lock"

MSP-11578

This reverts commit a3829b800d7f84d71ef7ff5185a4b073ee769091.
Delete starting empty line

When header is empty it shouldn't add an starting empty
new line
Fix Rex::MIME::Message specs
Add some randomized variables to JSP Payloads

Because the JASPER engine with Tomcat has been found
complaining about the out variable.
Depend on metasloit-framework in optional gemspecs

MSP-11578

Optional gemspecs should depend on the minimal metasploit-framework
because they don't work without metasploit-framework's code.
Fix spec.name in metasploit-framework-full

MSP-11578

Left in 'metasploit-framework-db' after copying and forgot to update to
'metasploit-framework-full'.
Allow for locally chosen rubies

By ignoring .versions.conf, we can allow users pick their own versions
of ruby without having to jump through a bunch of hoops on keeping
.ruby-version straight between local and remote branches.
typo