Added cask for Deskfun application
BUGFIX: don't try autocleanup inside system dirs

This safety feature addresses #2650 somewhat indirectly.
A list of system directories is defined.  When the uninstall
process encounters a "system directory" it does not touch that
directory at all
- no chmod on that dir
- no search for broken symlinks in that dir
- no cleanup of .DS_Store files in that dir
Explictly listed files from a pkg receipts are not affected by
this change.  Individual files will still be removed, even if
those files are in a special "system directory"
Divide search output into sections

typically "Exact Match" and "Partial Matches"
Add support for Adobe Air app installations

Adobe Air applications take the form of a .air file that the Adobe Air
runtime then installs and creates a .app -- typically in
/Applications.  This patch provides a new container for those .air
files which the Adobe Air runtime installs to the Caskroom as well as
tests for Adobe Air app installations.

Presently, if homebrew-cask doesn't detect the Adobe Air runtime, it
will provide an informative error message and instructions to obtain
it via `brew cask install adobe-air`.  This is obviously not ideal and
the installation process for the runtime should be automated in the
future.
use new CaskInvalidError, improve messages
CaskError objects instead of strings, better msgs
make checksum-missing message match Cask semantics

for copy/paste
add extended attributes for :target links

fixes #2847.  This PR adds OS X-specific extended attributes
(metadata) whenever :target is used on an artifact.  The
extended attributes are available for search software such
as Spotlight or Alfred to discover the artifact under the
:target name.

Limitations: Spotlight specifically chooses to ignore this
attribute for App bundles.  Alfred will also ignore this
attribute until the upcoming 2.2 release.
Emoji and disk usage stats at install success

- consistent with Homebrew output
- respects Homebrew environment variables
- does not add any Homebrew code dependency
- really just for fun
add optional appcast stanza to DSL

Appcasts are a standard way for applications to publish
information about available updates via RSS.  Sparkle and
other update frameworks are built upon appcasts.

In a quick test, appcasts were found for 188/360 Casks examined.

This PR adds an optional `appcast` stanza, but does not add
`appcast` to any Cask or make use of the info in any way.  It is
intentionally left undocumented.
`sha256 :no_check` as synonym for `no_checksum`
provide command aliases to match Homebrew

fixes #2969
Add Android Studio Bundle 0.4.2 build-133.970939

android-studio-bundle is different from android-studio as it comes with the Android SDK already bundled, within the .app.
This is the regular .dmg not cutting edge version you would get from http://developer.android.com/sdk/installing/studio.html
Razer Synapse 2.0 v1.21
Merge pull request #3151 from jsmitley/deskfun

Added cask for Deskfun application
Merge pull request #3150 from ahbeng/razer-synapse-1.21

Razer Synapse 2.0 v1.21
rename light-table.rb

to lighttable.rb
per naming rules in CONTRIBUTING.md
rename douban-radio.rb

to doubanradio.rb
per naming rules in CONTRIBUTING.md
rename navicat-mariadb.rb

to navicat-for-mariadb.rb
per naming rules in CONTRIBUTING.md
rename navicat-mysql.rb

to navicat-for-mysql.rb
per naming rules in CONTRIBUTING.md