Don't forget the Officiant of your wedding ceremony. If you have guests coming from out of town, inviting them will make them feel welcomed. This of course depends on your budget. The rehearsal dinner takes place after the ceremony rehearsal and is traditionally hosted by the groom's family on the eve of the wedding. But, as many of you already know, I keep stressing that tradition is changing with the times.
Many couples ask both sets of parents to split the cost.
It depends entirely on your situation. Some couples opt to have the rehearsal dinner a couple of days earlier rather than on the eve of the wedding. Unfortunately, this can't always work since many times there will be guests coming from out of town who cannot make it in much earlier than the day before the wedding. You might consider presenting the attendants' gifts on this occasion, but be careful not to forget offering a gift of thanks to anyone who has helped you along the way. Make sure you arrange the date for the ceremony rehearsal first.