compositor: add a new orbital_launcher protocol

The protocol is designed for launcher clients, such as dmenu or
krunner.
Add a launcher client loosely based on dmenu