applemidi.c: Fix out of bounds read.

len -= 16; should be executed after upper bounds check (sizeof (command->data.session.name)).
Otherwise, msg[] array may still be read beyond offset 48.

Should correctly fix #13 .
See, first (as you rightly pointed out) we read `msg[0]`..`msg[3]`, then (ln. [617](#diff-bfad4332671f27cdb4f5a409819143dfL617)) we remove that from the length.
Then (ln. [618](#diff-bfad4332671f27cdb4f5a409819143dfL618)), check if there are still more bytes, the sender name.
If the number of remaining bytes is larger than our buffer (ln. [619](#diff-bfad4332671f27cdb4f5a409819143dfL619)), truncate to the size of the buffer.

Finally copy the the bytes to the buffer (ln. [622](#diff-bfad4332671f27cdb4f5a409819143dfL622)). There shouldn't be any need for the substraction at the and of the line.