'Runtime-specific override for the XBlock service manager.  If a service is not currently
instantiated and is declared as a critical requirement, an attempt is made to load the
module.
Arguments:
block (an XBlock): this block\'s class will be examined for service
decorators.
service_name (string): the name of the service requested.
Returns:
An object implementing the requested service, or None.'

def service(self, block, service_name):

    service = super(DescriptorSystem, self).service(block=block, service_name=service_name)
    if callable(service):
        return service(block)
    return service
