adds FFmpegInfo task.

Parses the output of av/ffprobe into our model structure. A lot of data
is left out that can be stored on another field just in case.

Mostly a direct port of the javascript version found on Caspa.
adds helper function to get media type.

Based on jmrunge/image_support from Caspa.
filmstrip: use checksum if no output file is given

When we do not pass an output file we store the result on the same
folder as input, filename is transcoded checksum with '.mp4' suffix
like the frontend expects.
check for supported file type before queueing.
different workflow for images and video.

not pretty nor happy.
unicode woes, make everything use utf-8

On the signals definitions we had to change from 'str' to
GObject.TYPE_PYOBJECT as otherwise we'll end up receiving plain
strings again after emmiting an 'unicode'.

Fun.
adds thumbnails