This is meant to be a safer alternative since
NULL can often be 0. Let's not rely on that.
And yes, I know this is a lot of files. This is
a safer thing to do in big commits vs for loops.
This uses a lot more memory, but should make it smoother when playing heavily keysounded files. Many simulators do actually load all keysounds into memory before the game starts.