add a parameter as stack referencing Nodes needed to calculate hash
change Node::getHash's parameter type from list<> to list<>*
change Node::getHash's parameter type from list* to vector*
NodePacket::getHash pushes itself to referencingStack
(trivial) calculate packetNameHash
(trivial) change variable name

 - will accumulate all the hashes(packetNameHash, each packet member hashes) into packetHash
print packet hash (hash from packet name, not including packet members yet)
change hash type from int to std::size_t (unsigned int)
iterate packet members and combine their hashes into packet hash
add assertion
NodePacketMember::getHash returns hash
NodePacketMemberName::getHash returns hash
NodePacketMemberType::getHash returns hash (only in case of PRIMITIVE_DATA_TYPE)
(trivial) using namespace
add cross(mutual) reference between Context and SyntaxTree(Node)
add parameter for telling Context to constructor of Node and its descendants
change Node::context field's access specifier from private to protected
add Context::getDeclarationNode method
change return type of Node::getHash from int to std::size_t

 - type of hash: size_t in internal processes / integer in final output
NodePacketMemberType::getHash returns hash (in case of REFERENCE_DATA_TYPE)