Implement the CheckBSTValidity() function in the BSTChecker class in the BSTChecker.h file. The function takes the tree's root node as a parameter and returns the node that violates BST requirements, or nullptr if the tree is a valid BST.
a. A violating node will be one of three things:
b. A node in the left subtree of an ancestor with a lesser key
c. A node in the right subtree of an ancestor with a greater key
d. A node with the left or right member variable pointing to an ancestor