Graph::remove_node causes indices to shift if index isn't the last node.
Options to handle this are:
- Leave behaviour but document it.
- Make each
Slot an Option<Slot> and simply make remove_node set the Option<Slot> to None. Document the assumption that user never calls add_node more than MAX_NODES number of times.
I'm currently leaning towards option 2 - any ideas / input appreciated :)