more aggressively sanitize dbus paths

Harald Sitter requested to merge work/sitter/dbussanitization into master

paths may only contain alpha numeric ascii characters + _ + /. Also assert the path is well-formed while at it.

     The path may be of any length.

The path must begin with an ASCII '/' (integer 47) character, and
must consist of elements separated by slash characters.

Each element must only contain the ASCII characters

    No element may be the empty string.

    Multiple '/' characters cannot occur in sequence.

A trailing '/' character is not allowed unless the path is the root
path (a single '/' character).

Merge request reports