unmanaged_ptr was very unintuitive
draw shortest path, computation BROKEN