More robust handling of file modes (#771)
More robust handling of file modes (#771)

Previously, files with a mode other than "tombstone" were assumed to have a
"title" and "private_url". This is not necessarily the case; in particular,
files with the "hidden_by_limit" (removed from visibility because the
workspace has exceeded its free-tier storage limit) mode have *only* "id" and
"mode". This resulted in a KeyError trying to look up the "title" and
"private_url", and truncated history at the message with that file.

This commit explicitly handles "hidden_by_limit" files, and makes the handling
of any other unknown modes more robust by explicitly checking for "title" and
"private_url" before rendering a message with them.
trygveaa/wee-slack,wee-slack/wee-slack,rawdigits/wee-slack