> How should the human driver communicate with the machine?
In theory, a self-driving car could watch for hand-based turn signals, just like a human driver could, and take those into account.
In practice, what someone signals is far less interesting than what they do, and all it does is provide hints for reaction time, which 1) a computer already wins at, and 2) a computer should always leave enough time for braking/stopping/etc anyway. A human driver should never make an assumption based on someone's turn signal that would lead to a crash if they don't do what they're signaling, and neither should a computer.
> What should the machine do when there is a dog standing in the middle of a street?
Don't hit it (stopping if necessary), and listen when the human in the vehicle says "stop" (or "call animal control", or any number of other reactions). The human in the vehicle should always be in control of the high-level actions, just not the moment-to-moment ones.
> Going really extreme: in a car accident in a somewhat remote area, the driver might be able to get an injured passenger out if the passenger stuck. Now a fully autonomous car, there is only passenger.
Not sure what scenario you're getting at here. If you mean a driver and passenger in the same vehicle, the same problem exists today with an injured driver.