MRG augment string parameter for algorithms by optional dict of kwargs

This allows passing algorithm parameters - like what algorithm in dai or opengm, how many iterations etc.. directly to the ``inference_method`` parameter.
Do you think the tuple is a good idea? Or should we have "either string or dict"?