Fix: save UST context informations as a event_perf_context_type

This fixes UST perf counters not being recognized by the session
restore code at the linting stage.

Reported-by: Philipe Proulx <philippe.proulx@efficios.com>
Signed-off-by: Jérémie Galarneau <jeremie.galarneau@efficios.com>
Fix: Don't save an empty <contexts> node in kernel channels

An empty <contexts/> node is saved when kernel channels are
saved even when no kernel contexts are enabled.

Note that this is a minor fix as the generated XML remains valid
anyhow.

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