Finished chapter 14
Squashed 'lib/hash/' content from commit f00e6e6

git-subtree-dir: lib/hash
git-subtree-split: f00e6e6e167835308b0687d810cf7dd6bc529237
Merge commit '1d9ff90ca6771855b8e5708a7766bdcf7300188d' as 'lib/hash'
Updated khash library
Commit all pending changes
Updated gitignore for Visual Studio