The **unholy trinity** of errors concerns plugins, redirects and downloads. Most typically it surfaces like so:
- The address typed in the urlbar leads to a downloaded file, and the tab shows an error.
- A loading web page is cancelled via Esc or the toolbar button.
Implement speed dial based on recent history (#15)
![screenshot from 2018-08-18 20-45-09](https://user-images.githubusercontent.com/1204189/44302400-03a58a80-a328-11e8-8c4f-88be485e7920.png)
The speed dial is implemented as an "internal" scheme handler, which won't require special-casing on the UX side except using "internal:speed-dial" as a default URI in Midori.Tab and recognizing it as "empty" in Midori.Urlbar.
All items are populated automatically from the history and use favicons.
Via a `Plugins` subclass of `Peas.Engine`, any object can be exposed to extensions with a function call, adding boilerplate for `Peas.Activatable`. No Midori-specific API is exposed here but properties and signals can be accessed as-is. Any extensions supplying a .plugin file in ~/(snap/midori/current/).local/share/midori/extensions will be picked up and loaded immediately; the ability to enable, disable and configure extensions is beyond the scope of this task.