What are neural networks and how do they work?