GStreamerSharp: Initialize the media profiles backend

The new MediaProfileBackend class implements the various functions used
in the audio profiles definitions, and set everything up so that they
are ready to be used for encoding and transcoding.

This code is mostly copied from Service.cs in the native GStreamer
backend, which was doing this as part of the main GStreamer
initialization.

It is GStreamer-specific, and only a small part is specific to
gstreamer-sharp, so I didn't see a better way than duplicating that
code.
AudioCdSource: Log the exception before trying to dispose the ripper

The ripper.Dispose() call can itself cause a crash, which means we would
not see the original exception in the logs. So we now log the exception
first.
GStreamerSharp: Fix crash when ripping to non-MP3 formats

Only get the value of the "mpegversion" field is we're dealing with an
MPEG file. This prevents an NRE because that field is not present.