Added interfaces to concrete classes to make them more testable