Cellular Automata as Models of Parallel Computation