A General Theory of Diffusion