Clean and As covered zinc-blende and wurtzite GaN surfaces have been investigated employing density-functional theory calculations. For clean GaN surfaces our calculations indicate the stability of several novel surface structures that are very different from those found on traditional III-V semiconductors. Adding impurities commonly present in significant concentrations during growth strongly modifies surface reconstructions and energies. In particular, we find that arsenic has a low solubility and significantly stabilizes the cubic GaN (001) surface making it interesting as a potential surfactant. Finally, we have studied the diffusion of Ga and N adatoms on both the equilibrium and non-equilibrium surfaces. Our calculations reveal a very different diffusivity for Ga and N adatoms: While Ga adatoms are very mobile at typical growth temperatures, the diffusion of N adatoms is slower by several orders of magnitude. These results give insight into the fundamental growth mechanisms and allow conclusions concerning optimum growth conditions.