Derive file names from content hash (2/3)

Drop unnecessary data fields and columns
Derive file names from content hash (3/3)

Code to derive file names of images and thumbnails from their
content hashes stored in the database
Image URIs use hash instead of keyword

The keyword is still appended to image URIs for human
readability but ignored completely.
Reorganize .gitignore
Create Sublime Text project
Display current avatar in profile manager
Set umask to include execute flag for new directories
Use standard library for Filesystem::mkdirr()
Fix bug in starts_with()
Avatar paths derive from file hash

The scheme for avatar paths is now

<avatar_base_path>/<prefix>/<sha1_filehash_hex>.jpg

where <prefix> is currently N = 1 directory level with M = 2 characters
each of <sha1_filehash_hex>.
Print stacktrace on assertion failure in debug mode
Minor refactoring and automated whitespace correction