Add notice of warnings when debug is false

Since any problems are hidden by the use of this.warnings if you don't
have debug on you'll never know something went wrong. Granted the docs
do mention this. However, having a warning that warnings were suppressed
seemed appropriate.

If not then don't include this commit.
Add support to cache gists from the network

With a fresh run on my [website][1] the two bottle necks to building
were the gist plugin and the templates plugin. Realizing the real slow
down in the gist plugin was the many network requests needed (one per
gist in the blog).

This patch add caching by saving the response JSON from the server into
a `.gists/` folder. It uses MD5 to sanitize the filename (since a gist
has slashs and other non-filename characters in it).

This can be turned off with the `caching: false` option.

Benchmarks
----------

Initial run (no cache):  1359ms
Second run (with cache): 9ms

Obviously the caveats are:

1. The user needs to put the cache directory in their `.gitignore`. The
   directory can be set via the `cacheDir` option that defauts to
   `.gists`.
2. If the gists are updated on github then the cache needs to be cleared
   to get the update. `rm -rf .gists/`

[1]: http://tritarget.org/