Adding Base class to isolate gem functionality