Add support for cross-compiling the shared library for Windows and OS X

Also ensure that the shared library is versioned, and an implib is created on Windows.

This involves adding -fPIC, fixing the LDFLAGS order (needed for building the shared library), creating a symlink for the unversioned shared library, and so on.

This change is used by the GStreamer project with its continuous integration system based around [Cerbero](http://cgit.freedesktop.org/gstreamer/sdk/cerbero) for the srtp GStreamer plugin. This change has been tested on Mac OS X, Linux (Ubuntu/Fedora/Debian), Windows 32-bit and 64-bit (cross-compiled, mingw), and Android (cross-compiled).