Use -q option for git commit when saving to cache

Using -q prevents git from displaying the warning message about user
config not being set:

```
Committer: root <root@default-ubuntu-1204.vagrantup.com>
Your name and email address were configured automatically based
on your username and hostname. Please check that they are accurate.
You can suppress this message by setting them explicitly:

    git config --global user.name "Your Name"
    git config --global user.email you@example.com

After doing this, you may fix the identity used for this commit with:

    git commit --amend --reset-author
```
Use git to filter tags when searching cache

The `git tag -l` can be given a pattern such that only tags matching the
pattern are returned. Instead of retrieving a listing of all tags and
filtering in the ruby code, we now ask for the tag we are looking for
and will get back either a single line (hit) or no output (miss).

This will greatly reduce build job output which was streaming the
tag listing multiple times prior to this patch.
Include software config file content in tag digest

Ensure that a change to how an item is built invalidates the cache. This
is important since a build could succeed and be saved into the cache
only to later fail the health check. In almost all cases, the fix for
this will either be a change to the software or its build config.

When computing the cache key (git tag name), we now compute the SHA256
digest of $SOURCE_CONFIG + $DEP_STRING where $SOURCE_CONFIG is the
contents of the software config and $DEP_STRING is $NAME-$VERSION of all
items built before this one delimited with '-'.

Omnibus::Software has a new attr_reader source_config to allow access to
the file contents of the software config.
Merge branch 'sf/git-cache'
Add notes on how the git based caching works
Add configuration options for DMGs
Add support for building the DMG
Add specs for new config options
Use the same name from the .pkg as the .dmg
Add OSX-specific docs
Package default assets in the generator for mac packaging
Calculate required dmg files
Fix failing specs
Update OSX README
Document caveat about configuring the DMG build
Up the size of the dmg
Create packaging common base
Make the default license "All Rights Reserved"
Use a config option for toggling the DMG
Fix rubocop warnings