How does quantum computing work?