Fix update notification. Footer was on top of text.
Move host match from manifest to the plugins.

* Plugins have the new field 'hostMatches', which is a RegExp.
  The plugin will be loaded on all urls that match this.
  This removes all plugin content script lines from the manifest.
  Thus plugin and matching are in the same file.

* Plugins updates:
  - New plugins spec field: 'urlAttr'
  - prepareSpec can be a function, instead of a constant,
    should be used, when Hz.Options are used. Or option changes won't
    be used immediately, but after reload.
  - Plugins use 'Hz.plugins.add' instead of calling new Hz.Plugin ...

* background.html deleted
  Page doesn't contain anything except scripts anyway. Add the scripts
  to the manifest instead.

* common.js
  - Hz namespace is created here already, so Messages, Options, and
    other util functions of common.js can be part of it.
  - Move some functions from hoverzoom.js to common.js

* Hz.Options changes
  - Loads options automatically. All pages need it anyway.
  - Options are now a property of Hz.Options
  - Add two events: 'onInit' and 'onUpdated':
    Use like other chrome events, addListener(handler)
    - onInit will fire exactly once. If event was fired before handler
      was added it will be called right away.
    - onUpdated will fire when options are saved.
  - Hz.Options.store() saves options and fires onUpdated event.

* background.js
  - Don't check for updates on every run. Instead use onInstalled
    listener, which will also be called on updates.
    Don't store hzVersion in localStorage, previous version is passed
    into handler.
  - hoverzoom sends message to background page with all iframes and host.
    Background page then injects all plugin scripts that match.

* hzCache.js
  - add print field to ajaxRequest spec. Useful for debugging.

* Plugins removed:
  - oxd.in: is down
  - livememe: handled by default
  - yahoo: zoomed url can no longer be retrieved from image
Add webhallen.com plugin