Small correction on BasicNodeStructure

DeleteNodes should set this->root to nullptr or IsEmpty will not
return true after Clear being called.
Note on method FirstOrDefault
Note on Queue::Dequeue
Note on Stack::Pop
Merge branch 'master' of https://github.com/ramaciotti/DataStructures into ramaciotti-master

Conflicts:
	C++/DataStructures/List.h
	C++/DataStructures/Queue.h
	C++/DataStructures/Stack.h