Adding download plugin functionality to existing UI

I don't think the changes can be merged in the current state, but the reviews will help me be on the right track.

Commit Message:

A list of plugins (JSON) is downloaded when Picard starts. The JSON
data is used to match already present plugins with those on the server.

The result is something like this: http://i.imgur.com/cL8VuM5.jpg

The entries checked are the plugins that are enabled. The ones in the
bold are those which are available for download, i.e, they are
present on our Github Repo. Those not bold might have been added by the
user from other means (such as by copying plugin files to Picard's
directory.)

One thing that worries me about the bold ones is that as plugins get
added to the GH repo, most of the entries in the list will be bold, and
that won't look good.

All the user has to do is select one in the bold and press the "Download
Plugin" button (that part isn't finished yet.)

The data used to check if the plugins are on our Github repo or not is here:
https://raw.githubusercontent.com/dufferzafar/picard-plugins/master/Plugins.json

The script used to generate the JSON and a API that helps with downloads are here:
https://github.com/dufferzafar/picard-plugins

Apart from the actual download, the one thing that still needs to be
done is listing the plugins that are on Github but not present in plugin
folders.
Doesn't a lot of this file duplicate things already in `picard/ui/options/plugins.py`? We should definitely separate whatever common code there is into a base class of some sort.