nRF24L01+ - which library to use?

arusr:
Why is the (byte *) and "&" operator used here? I thought the * means "value of" and the & means "address of".

If I have a variable that denotes distance (an int) that I'm trying to send, would I simply put in this?

Mirf.send((byte *)&distance);

both *, & have multiple meanings, you are correct in this instance with &, it is the address of operator.
The * is denoting a pointer type, and a type in brackets is a cast.

Your version would be fine, however the Mirf requires a payload size to be set. Looking at the code you should be able to set the payload size like this:

Mirf.payload = sizeof( int );

//Then send.
Mirf.send((byte *)&distance);