introduce an abstract beanstalkd service