added virtual to before print for added readability.  Also added a few comments.