Service request intent (without performer)

This is the beginning of the new service_request API. There's no performer yet; just the factory function and the intent.
I'd rather do that separately.