missing parameter error are no more meaningfull

When ever we attempt to format a string and are missing some parameter,
we end up with:

    <stacktrace>
    KeyError: 'ext-name'

Which is not that helpful.  This patch dump the string being formatted
and the list of parameters provided to deep_format().  Example output:

    JenkinsJobsException: ext-name parameter missing to format ext/{ext-name}
    Given: {'jobs': ['{name}-ruby1.9.3lint', '{name}-browsertests'],
    'name': 'mwext-UniversalLanguageSelector'}

Which in most occasion should be self explaining.

Note the KeyError is reraised as a generic Exception since the format is
meant for human and is no more representing the key.

Change-Id: I46fced45c4586fca8ea999766327b7b4b2dc6505
Merge "missing parameter error are no more meaningfull"