Make a stack class as demonstrated in class. It should use pointers and not array indexes. It should hold pointer-to-person. Make a person class. It's fields should be string name int age It should have a constructor It should overload the ostream operator friend std::ostream& operator<< (std::ostream& stream, Person &p) { // Code that send 'p' to 'stream' return stream; } Make a Stack class that holds POINTER TO PERSON. It should have a push It should have a pop When pop'ing a person, delete the person! It should overload the ostream operator Write a program that can read a file, and do what the file says. If the line starts with a '+', that means push the person onto the stack If the line starts with a '-', that means pop the person and print them. If the line starts with a '?', that means print the whole stack (but delete no data) Upon end of file ... exit Due Fri Nov 3rd. Steps to doing the Program 1) Make a Person class. 2) Test it. Make a few, print them. 3) Make a stack class. Put in some People. 4) Test it. 5) Make a main that reads the file. 6) Test it. 7) Submit program .. rejoice. Example Data File #1 + Scott 43 ? - ? Example Data File #2 + Wilma 33 + Barney 34 + BamBam 2 + Dino 5 ? - - + Fred 40 - - - ?