May want to hide the implementation behind an interface