Implement tuple values in the deluxe interface
Ref T137
Define rosa::deluxe::DeluxeTuple as an std::tuple with some static type-related information for RoSA. Make DeluxeSensor and DeluxeAgent work with DeluxeTuple values. Extend DeluxeContext so that it supports creating sensors and agents with processing functions working with single built-in values as before and the new DeluxeTuple values as well.
There are some limitations in the public interface provided by DeluxeContext:
- all types of processing functions used for creating a sensor or agent need to be either single types or DeluxeTuples, those cannot be mixed;
- an agent that produces master-output values but not for all of its slaves needs to be defined using DeluxeTuples so that the type EmptyDeluxeTuple indicates no master-output for a slave position.