Checking for size of outgoing and incoming edges of the vertex after removing a single edge

- After removing all incoming or outgoing edges, incoming or outgoing
  edges of a vertex are set to null
- But after removing a single edge, it is not checked that outgoing of
  the source or incoming of the destination should be changed to null
  or not
- This commit checks that condition and sets outgoing and incoming of
  source and destination respectively to null if the condition is met.