First question:
in a pn junction without external fields applied, there are no net currents. We have two distinct currents near the border of the p and n region, which are equal and opposite.
We have an excess of holes in the p region, so they diffuse in toward the n region. The electrons of the n region diffuse toward the p region. These two made the diffusion current (they move in opposite direction, but have different charge sign, so the actually sum).
Due to diffusion, holes leaves negative charged ions in the p region, electrons positive ones in the n region. This creates an electric field (and a consequent drift current) which equals the diffusion current at equilibrium, but has opposite sign.
Second question:
when you apply a forward bias (big enough to overtake the built-in potential) to a pn junction, this cause holes in the p region to flow toward the n one and electrons of the n region to flow toward the n one, which result in a current in the device (a big current, because you have many holes in the p region and many electrons in the n one, i.e. the current is sustained by majority carriers).
When a hole reaches the n zone, it recombines with an electron, the same for electrons entering the p region.
In facts, holes do move. They behave as positive charged particles, even if slower than electrons (about a factor of 3).