Remove allocations from SpatialIndex::Neighbors()
Switch to boost::unordered_map

Switch away from a home-grown HashMap to boost::unordered_map.
Use a 2D 3x3 neighborhood

Use a 2D 3x3 neighborhood instead of a 3D 3x3x3 one.