Split up comment into multiple structs.
Fixed post template to work with new comment structs.
Refactored file loading into one functions with callbacks.
Split up blogpost struct.
Used a replacer to replace illegal post URL chars.
Renamed blogpost "PublishDate" to "Date".
Fixed tests.
Fetched last modified date from files.
Each filesystem event only causes us to reload one post instead of the
entire blog.
File updates all handle mutexes correctly.
Updated readme.
Extracted tags code into separate file.
Tags are updated when posts change.
Reverted re-order of trimming that broke tags names.
Switched to TrimSpace() instead of Trim().
Made file watcher function internal to Blog object.