Added the API as a part of the main website (/api)

The errorhandler returns a json based error response when a 404 occurs
on a url beginning with /api

The api currently has two endpoints:

    /plugins/?id=<id>	lists the plugin matching the id.

			if no id is secified, all plugins are listed

    /download/?id=<id>	serves the plugin specified as a download attachment.

			if no plugin is specified, an error is raised

			if the plugin has multiple files, they are zipped and served.

The api responds in application/json for all output and errors.
We'll definitely want things zipped beforehand, so we don't have to do it on each request. It should happen when we're watching the plugins repository for changes.

Basically, we'll need a checkout of the picard-plugins repository on our server, and a bash script which cds into it, runs git pull, checks if the HEAD commit has changed, and if so updates the json, zips any files up, plus performs any other necessary tasks.