Store metadata with installed Casks.

Step 2: Snapshot the Cask file used at install-time, using
the previously-merged metadata directory support.

Using a simple filesystem-is-a-database approach, we set up a
`.metadata` directory for each installed Cask in which we can
record any information, starting with a copy of the Cask
definition which was used at install-time.

This should be useful for various cases such as:
- a fallback when the Cask was renamed/removed.  We
  currently cannot recover any uninstall info in that
  scenario
- installation of multiple versions of the same software

There might be a smarter way to discover the source filename
for the Cask through introspection or some deep Ruby voodoo.
All I could come up with was to pass the filename in on the
constructor, which seems perfectly reasonable if voodoo is
not available.  The existing code was taking the title as an
argument to the constructor, which is dispensable.

This PR contains no code to actually make use of the metadata,
but only takes care of the relevant book-keeping: creation,
destruction, as well as organization of metadata according to
software version number and timestamp.
Merge pull request #3066 from rolandwalker/snapshot_caskfiles

Store metadata with installed Casks.
Update nmap license from unknown to gpl

https://svn.nmap.org/nmap/COPYING
Update darteditor license from unknown to bsd
Update frostwire license from unknown to gpl

http://www.frostwire.com/license and https://github.com/frostwire/frostwire-desktop/blob/master/LICENSE.txt
Update subsmarine license from unknown to commercial
Update licensed license from unknown to gratis
Update tofu license from unknown to gratis
Update namely license from unknown to gratis
Update zeroxed license from unknown to gratis
Update propresenter license from unknown to commercial
Update electrum license from unknown to gpl

https://github.com/spesmilo/electrum/blob/master/LICENCE
Update electrum-ltc license from unknown to gpl

https://github.com/pooler/electrum-ltc/blob/v1.9.8.4/LICENCE
Update clarify license from unknown to commercial

http://help.clarify-it.com/m/22365/l/116251-clarify-licensing
Update renamer license from unknown to commercial
Update nicecast license from unknown to commercial

http://www.rogueamoeba.com/nicecast/
Update fission license from unknown to commercial

http://www.rogueamoeba.com/fission/
Update intermission license from unknown to commercial

http://www.rogueamoeba.com/intermission/
Update piezo license from unknown to commercial

http://www.rogueamoeba.com/piezo/
Update linein license from unknown to gratis

http://www.rogueamoeba.com/freebies/