Add the Node data structure

The Node is NOT designed to be used as a stand-alone structure (but it
is possible), but rather as an auxiliary struct that will be used when
implementing trees, lists, queues and stacks (which will all use Nodes
as a basic data structure, they will just manipulate it an access it
differently).