Can templates be limited to a class that inherits from other class.
for example template, T must inherit from Foo in order to be used in a template
template