Filter keys in final result when using Stepable concern
Follow-up from !18528 (comment 232498272):
Add a way to choose which keys are returned by a service that uses the Stepable concern.
When using the Stepable concern, the result of the previous step is passed to the next one and the result of the final step is returned to the caller of the service. However, the result of the final step might contain keys that we do not need/want to return to the caller of the service.
We can have the final step filter the keys in the final object to be returned. This final step can be added to the Stepable concern so that services using the concern only have to define an array of keys that should be retained in the final result.