Created the function 'degrees' and supporting functions.

'degrees' will break a graph down into a [[NodeID]] type, the nth [NodeID] in
that list holding the nodes that are seperated from the original by n degrees
(starting from zero with the start node).

Also included are various supporting functions. gNodes performs the same as gN
but can get Nodes from a list of NodeIDs. killDups takes a target and auxilliary
list and returns the target with any members of the auxilliary removed.

I have placed a lot of emphasis on using [[NodeID]] and [NodeID] in declaring
types where the datea considered is not necessarily a Graph or Node (the
respective equivalent types). I will consider the addition of more types but
this risks obsfucation (which the above already risks...)