Concatenate raw diffs as bytes.

The raw diff method was concatenating all the individual file diffs using '',
but those file diffs may be undecoded string data that doesn't parse as
unicode. This changes it to use b''.

Trivial change.
Fix a bad assumption in the new binary file download logic.

The new logic for showing download icons for binary files made the bad
assumption that there was a FileAttachment we could query. We'd fail if
not.

We now check if the attachment is truthy before attempting to get the
URL.