More autoconf housekeeping

Don't let AC_SEARCH_LIBS([lrintf]) add -lm to LIBS, otherwise we'll
unconditionally link everything with it.

Correctly handle the third possibility of AC_SEARCH_LIBS, that no
library at all was found.

Link libopusfile with $lrintf_lib, it uses it and will otherwise fail
with linkers that use --no-add-needed / --no-copy-dt-needed-entries.

Don't bother to test for doxygen if using it is --disable'd.
Switch to using config.h for configuration options

The main motivation for this is it ensures the files will actually be
rebuilt if the configuration options are changed.
Always try to update the version when autogen.sh is run

This avoids at least one case where ./autogen.sh && ./configure && make
will re-run configure because the makefile rules updated something that
it depends upon. Pulling a new version from git will change the version
so we should update that at the first step rather than iterating after
the last one.
Typo fix.
Avoid using a long-long literal for OP_INT64_MAX.

The LL suffix isn't C89, so it may not work everywhere.
Plug possible memory leak on stream open failure.

Not all the failure paths cleaned up after themselves properly.
Thanks to tangobravo for complaining about similar issues in
 libvorbisfile, which prompted me to audit this code.
API documentation updates.

- Provide an Overview section which describes some of the general
   design decisions of the libopusfile API.
- Explicitly state that we always decode at 48 kHz.
- Make it clearer that we always apply the header gain.
- Document the automatic soft-clipping support.
- Document that stream open failure does not close the source.
- Other minor fixes.

Thanks to tangobravo and siriusbtx for asking the questions which
 prompted this update.
Add a gain control API.

A new op_set_gain_offset() allows the application to provide its own
 offset to the current decoder gain setting, as well as specify what
 offsets should be applied.
The header gain alone is still the default, but the application may
 also request that the track gain be applied, or that neither be
 applied.

In addition, an op_get_track_gain() function can parse the track
 gain out of a set of comment tags.
This is mainly provided as a convenience for applications that need
 this information, so they don't have to write their own parser.
Add UTF-8 filename support to Windows.

As requested here:
http://www.hydrogenaudio.org/forums/index.php?showtopic=101817
Relax MSVCRT requirements.

Previously we used _fseeki64() and _ftelli64() for 64-bit file
 access on Windows, but this requires MSVCRT80 (which requires MSVC
 2005 and is not shipped on XP by default).
Reimplement these functions using the C89 fgetpos() and fsetpos(),
 relying on the MSVCRT/minw32-specific definition of fpos_t.
Add MSVC project files for library and examples.

This is a big squashed commit of Garf's add_msvc_projects branch.
It currently does not include HTTP[S] support, as no one has sat
 down and worked out the best way to link against OpenSSL.

Signed-off-by: Timothy B. Terriberry <tterribe@xiph.org>
Minor comment updates.

We've been able to differentiate between a read error and EOF since
 e2d7b266.
Add win32utf8 code to the unix makefile for mingw builds.
Add a magic vpath to the unix makefile.

This satisfies the Makefile's dependency on itself when buiding
in a parallel directory, like I use for the mingw builds, without
having to 'touch Makefile' as a work-around.
Bump the soname versioning for v0.3.
Add win32utf8.h to the source lists so it's distributed.
Add VS2010 project files to the distribution.
Turn off incremental linking in all configurations. r=Garf

Incremental linking fails on my unpatched VS2010 compiler
with "failure during conversion to COFF: file invalid or corrupt".
Other than testing both configurations there's no particular
reason to use the option here.
Add an API to parse picture tags.

This makes it easier for applications to support album art.
This is still relatively untested.
Minor UTF-8/UTF-16 cleanups.

- Reject 'not a character' values 0xFFFE and 0xFFFF.
- Remove some unnecessary string length checks.