Quantum-Dot Cellular Automata: Computing in Nanoscale