How Insight Emerges in a Distributed, Content-addressable Memory