Reasoning Behind Additional Phase Shift in DPSK
A QPSK constellation could in theory have any rotation. For example, $$\mathcal{S}=\lbrace 1, j, -1, -j \rbrace $$ is a QPSK constellation, and $e^{j\phi}\cdot\mathcal{S}$ is also a QPSK constellation. Matlab's phaserot parameter in the dpskmod command is $\phi$ in the equation above.

What is to be gained depends on the particular application I guess. In particular, note that $\phi=\pi/4$ is nice because then the ML decoding rule is equivalent to finding what quadrant the received point is in.