Boron Diffusion in Silicon in the Presence of Grain Boundaries and Voids