Distributed User Interface Orchestration: On the Composition of Multi-User (Search) Applications