Fix: get the stream_id when generating live beacons

When we send an empty index (beacon), we need to extract the stream_id
to avoid stalling the client on inactive streams on startup.
Since the live clients need to know this feature is implemented, we had
to bump the lttng-live protocol version.

This fix should be backported to stable-2.4 as well.

Refs: #811

Signed-off-by: Julien Desfossez <jdesfossez@efficios.com>
Fix: ustctl_get_stream_id without UST support

Signed-off-by: David Goulet <dgoulet@efficios.com>
Fix: relayd stream set close_flag on stream close

Signed-off-by: David Goulet <dgoulet@efficios.com>
Fix: Create a lock file to prevent multiple session daemons

A lock file is used to ensure that only one session daemon per UID is
running on the system. The lock file is created in the rundir.

Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Signed-off-by: David Goulet <dgoulet@efficios.com>

Conflicts:
	src/bin/lttng-sessiond/main.c
	src/common/utils.h