What Lies Beneath the Surface: Topological-Shape Optimization With the Kernel-Independent Fast Multipole Method