Adding a new constructor
Changing two member variables to protected
Adding new constructor
REPL