Defining skeletons for the essential components of a Search process:  A SearchNode and a SearchProblem