interfaces: add ILanguageInvoker and ScriptInvocationManager
python: implement CPythonInvoker (replacing XBPyThread)
XBPython: cosmetics
python: let XBPython implement ILanguageInvocationHandler
cosmetics: remove trailing spaces from XBPython.h/cpp
python: register XBPython for .py files
use CScriptInvocationManager instead of XBPython
[win32] update VS project files
CdripEncoderFFmpeg: Remove vorbis special casing.

Since we have a libvorbis encoder, we should probably not try to encode vorbis with ffmpeg: http://xiphmont.livejournal.com/51160.html
DllAvFormat: Map avformat_alloc_output_context2.
CDRip EncoderFFmpeg: Modernize.

Convert to use avformat_alloc_output_context2 and avcodec_encode_audio2.
Convert input audio to the format requested by the encoder if needed.
CDRip FFmpeg: Reduce a bit the avio buffer size as suggsted by libavformat documentation.
CDRip FFmpeg: Write directly to the disc in the avio callback since avio does the buffering for us we do not need to do it twice.
CDRip FFmpeg: Rename MuxerReadPacket to avio_write_callback which reflects more its purpose.
DLLAvCodec: Do not map avcodec_encode_audio anymore since it is deprecated and now unused within xbmc code.
Configure, internal FFmpeg: Enable asf muxer and wmav2 encoder for ripping CDs to wma2.
CDRip: Add definitions for ripping audio CDs to M4A (AAC) and WMA with FFmpeg.

More formats can easily be added but I think we should be parcimonious: If we add too much of them the users will likely be lost.

So far, M4A seems interesting for iTunes users (iOS, OSX, etc.) and WMA for windows users.

Also add the files to the vcxproj since they were missing from there.
Allow selecting AAC and WMA audio CD ripping for the GUI.
Fix build failure with MSVC. Thanks to Jenkins tests.
CDRipEncoder: Add FileSeek function for seeking (required by some libavformat muxers).