A topological classification of D-dimensional cellular automata