Make the layouts: config key relative to CWD or to Source

Fixes #1576.
Add tests for determining source dir
Make LayoutReader#layout_directory public.

Since it's being used in a test, let's go ahead and expose it instead of
dealing with using Object#send to send the message along.
Merge pull request #2058 from jekyll/layouts-relative-to-config