Base class and minimal functionality, but something working