Create wrapper exception to wrap around JSONException

Since most of the time we will be handling the various exceptions
that can pop up in the same way ('operation failed, please
try again'), and the actual errors returned by MediaWiki will
be in the JSON structure itself and need to be handled separately,
it makes sense to have a single wrapper exception to reduce the
number of catch blocks absolutely needed. Most client code
can probably treat the two wrapped exceptions the same and not
lose much.

Wrapping the other exception (IOException) will be done in next
commit.

Change-Id: Id74be171dffd670277e0b49a492e3813ceed983a