Give a build warning if a layout does not exist

Throw a warning if a non-"none" layout is specified but the corresponding
layout file does not exist.
Do the same for documents
Move layout validity logic to separate method
Add path of file requesting nonexistent layout
Fix up errors in CI build
Exclude excerpts from layout checks
Use `is_a?` instead of `class`
Remove unnecessary Jekyll::Tags::IncludeTag#blank? method
Merge pull request #2625 from fw42/remove_unnecessary_blank_method
Update history to reflect merge of #2625 [ci skip]
Add jekyll-hook to deployment methods.

Port of #2617 to the master branch.
Go back to UTC.
Try removing the timezone altogether. [ci skip]
Fix post_url in 2.0.0 release post. [ci skip]
When using subdirs to reflect categories, the underlying `categories` attribute was not set
Fix link to Jekyll v1.0.0 release post.

What are timezones.
gcnovus and bahuvrihi no longer exist on GitHub.
Actually print properly.
Do not forget to downcase the categories here as well
Merge pull request #2633 from redox/read_categories_from_path