do not swallow exceptions for disk checks

`WriteableDiskCheck` can fail for a variety of reasons besides the
underlying `open` or `utimensat` syscalls failing.  For example:
another directory (such as `/bin` or `/lib`) can not be read, a
shared library could be missing, a ulimit reached, or a bug in the
check itself.  To allow those situations to be debugged we need to
exception.

NOTE: Log is at WARN to preserve 'at least one path must be writeable'
semantics.  However, those semantics are nuts and should probably be
changed to 'all paths must be writeable'.