Added support for custom page templates.

If you put a file called `.page.ftl` in the source root, it will be used
as the page template instead of the default one.
Added support for static files.

All files in the `.static` directory are now copied over to the target
directory.

This feature required a bit of refactoring in the existing code to make
it work. As part of that, the MarkdownToHtmlFileConverter now uses a
custom FreeMarker TemplateLoader on top of the FileSystemAccessor, so
that all file system access is again located in one place, allowing
unit tests to run without the file system.