Newby mistake: template Methods must be virtual so they can be overriden
Refactor: remove project warnings