Improving terminal outlets
Terminal outlets are defined as any point where a local network ends. However, this can result in local networks, wherein a local network sits in the catchment of a lower network. This itself is fine, but in practice we often don't want to export the outlets for these nested networks.
Nested networks can be screened by comparing the basin ID of the outlet to the outlet ID. The network is nested if the two IDs don't match.
We should consider adding a method to perform this screening automatically. Something along the lines of a "remove_nesting" method, which removes nested outlets.
We should also update Raster._update_basins. Currently, this method resets the basins whenever a terminal ID is removed. But nested terminal IDs don't correspond to a basin, so we should update the method to only reset when a basin ID is removed.