Whenever you're ready, walk me through how you'd approach this.
Tell me about encapsulation, virtual functions, pointers, stack, and heap in C++.