Hi,
The present perfect has two uses. It can refer to one action that was started in the past and has an effect that lasts to the present.
Have you done your homework? Has the package arrived?
Notice the use of "your" and "the" here, and the fact that we could add "yet" at the end when we use the present perfect in this sense.
I have bought what we need for dinner. She has taught her students well.
Again, the direct object is specific. Also, "already" can sometimes be added.
The present perfect can also refer to a completed action at any time in the past.
Have you eaten at that restaurant? Has he taken an algebra class?
When the present perfect is used in this sense, "ever" can be added for emphasis.
Have you ever eaten at that restaurant? Has he ever taken an algebra class?
On #2, you are right. Using a continuous tense emphasizes the duration of the action. The present perfect simple in that sentence is just a statement of fact. The present perfect continuous gives a slight feeling of being involved in the action, or having a more personal interest in it.
#3
The past perfect is also correct here, but it sounds very literary. In the US, at least, the past perfect isn�t used much in speech.
Bruce