Added Node class and tests