Demonstrate polymorphism and slicing

- Functions are no longer overloaded
- Added code in main.cpp to pass derived objects as base objects in
various ways