1. it also returns bytes, but often the coder isn't interested in the return data, so omits as in your example. Otherwise, something like this e.g.

    (bool success, bytes memory retData) = msg.sender.call{ ...

2. see 1.

3. no, not a reserved name, just a meaningful name for the example. anything that didn't match a function name would have worked just as well