Refactored to use the base class now stored in its own package.