mpd: 0.17.4 and massive cleanup.

Add sqlite3 and libsamplerate as depends; they're small, and there's
really no reason not to want them.  Remove an unnecessary dep on mad
(ffmpeg can do everything it can).

Add :optional support for WavPack, JACK, and two-lame.

Make the deps for streaming output (libshout, lame, flac) optional.

Rename "--enable-soundcloud" to "--with-yajl" which, while less
informative, correctly controls the dependency on yajl.

Rename "--libwrap" to "--with-libwrap". Change its description to
reflect how it behaves differently on OSX <10.7, 10.7; remove on 10.8,
where it's useless.

Rename "--lastfm" to "--enable-lastfm" to follow the
options-start-with-verb conveition.

Document all of the options changes/quirks in caveats.

mpd moved from http://mpd.wikia.com/ to http://www.musicpd.org/ in April
2013.

Closes #19368.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
audit: don't try to audit missing deps

Refs #20829.
brew-test-bot: always write something to email file.
Don't use 'obj == nil'
avidemux: style
libmikmod: style
qt5: use optional dep for mysql
poppler: use optional dep for glib
graphviz: use optional dep for gts
wine: optimistically add freetype workaround for 1.6.x
info: Only print Cellar info if it exists
Sonar 3.6

Closes #20833.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Sonar Runner 2.2.2

Closes #20834.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Be explicit about passing formulae names or instances to Tab
denominator 2.0.0

Closes #20836.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Add syntax sugar for MPIDependency

Closes #20797.
Remove unused guard

Closes #20716.
freeglut: fix build on Snow Leopard

Make the examples optional; they don't build on Snow Leopard.

Closes #19864.
isl: revert to 0.11.2

0.12 breaks GCC 4.8 and 4.9 at the moment.

Fixes #20835.

This reverts commit e2b10438666f41366f596fe762b2455f5761bcd8.
Fix some #eql? correctness issues

The implementation of #eql? and #hash should ensure that if a.eql?(b),
then a.hash == b.hash, but #eql? itself should not *depend* on #hash.

For example, given

  class Thingy
    def eql?
      instance_of?(other.class) && hash == other.hash
    end

    def hash
      [name, *tags].hash
    end
  end

if #hash produces a collision for different values of [name, *tags], two
Thingy objects will appear to be eql?, even though this is not the case.
Instead, #eql? should depend on the equality of name and tags directly.