added base class for puck to inherit from