Plugin system improvements, Gist plugin

- add support for asynchronous plugins (lazy loading)
- add an URL plugin wrapper that eliminates redundancy
- add a lazy Gist embedding plugin