Add USE_INTERNAL_LIBS, a default for USE_INTERNAL_*

Linux distributions that want to link dependencies externally will
generally want to link (almost) every dependency externally; similarly,
minimal-dependency builds that want to use the embedded copies of
dependencies will generally want to do so for (almost) every dependency.
Make it easier to choose one of those by setting USE_INTERNAL_LIBS=0
or USE_INTERNAL_LIBS=1, respectively.

The default can still be overridden per-dependency; for instance,
"make USE_INTERNAL_LIBS=0 USE_INTERNAL_OPUS=1" will use the system
version of everything except Opus.
Centralize checks for Freetype, with a user override

This lets us find a library in a non-standard library directory
(via -L in the pkg-config metadata), and allows overrides similar to
the Autoconf convention, e.g.

    make FREETYPE_CFLAGS=-I/opt/freetype/include \
        FREETYPE_LIBS="-L/opt/freetype/lib -lfreetype"

If pkg-config didn't work, assume that Freetype is in the default
location.
Allow libcurl to be in a non-standard location on all platforms

We didn't add CURL_CFLAGS to CLIENT_CFLAGS on all platforms, and didn't
use CURL_LIBS at all, so if "pkg-config --libs" returned "-L... -lcurl"
or even "/.../libcurl.a", it wouldn't work.
Allow OpenAL to be in a non-standard location on all platforms

Similar to libcurl, we didn't use OPENAL_LIBS and assumed it was
always "-lopenal".
Allow system libjpeg to be in a non-standard location

It doesn't have pkg-config metadata (at least on Debian), so if the
user doesn't override it, assume normal system paths.
Find system zlib via user override, pkg-config or in standard locations
Look for system Vorbis, Opus and Ogg via pkg-config

As usual, the order of precedence is: user override, pkg-config,
or assume they're in standard locations.

In particular, Opus isn't in the default search path on Debian.
Find Speex via user override, pkg-config or default search path