This file's bytes changed in ba46dc83c6, corrupted by some unknown
process; its bytes begin:
```
00000000: efbf bdef bfbd efbf bd64 0000 0000 0000 .........d......
00000010: 0000 0000 0000 0000 0000 0000 0000 0000 ................
00000020: 0000 0000 0000 0000 0000 496e 666f 0000 ..........Info..
00000030: 000f 0000 000f 0000 1a1e 0011 1111 1111 ................
00000040: 1122 2222 2222 2222 3333 3333 3333 4444 ."""""""333333DD
00000050: 4444 4444 4455 5555 5555 5555 6666 6666 DDDDDUUUUUUUffff
00000060: 6666 7777 7777 7777 77ef bfbd efbf bdef ffwwwwwww.......
00000070: bfbd efbf bdef bfbd efbf bdef bfbd efbf ................
00000080: bdef bfbd efbf bdef bfbd efbf bdef bfbd ................
00000090: efbf bdef bfbd efbf bdef bfbd efbf bdef ................
```
This is not an MP3 file (which should begin with the bytes `fffb`) nor
an MP3 encapsulated in ID3 (which would begin `4944 33`). This left
it playable by some browsers, but not others like Safari.
Restore the version from before ba46dc83c6, which is universally
recognized as an MP3 file.
Also, add a new notification sound, "ding". It comes from
https://freesound.org, where the original Zulip notification sound comes
from as well. In the future, new sounds can be added by adding audio
files to the `static/audio/notification_sounds` directory.
Tweaked significantly by tabbott:
* Avoided removing static/audio/zulip.ogg, because that file is
checked for by old versions of the desktop app.
* Added a views check for the sound being valid + tests.
* Added additional tests.
* Restructured the test_events test to be cleaner.
* Removed check_bool_or_string.
* Increased max length of notification_sound.
* Provide available_notification_sounds in events data set if global
notifications settings are requested.
Fixes#8051.