Change JACK_DEFAULT_SELF_CONNECT_MODE to "allow"

The constant was introduced when the mode parameter of the JackEngine
constructor was added in aab13501f44e30636a505dbacfb58dbf08b85340.
Then in 6253344da6021edfdd36bf702f2d97b2e21cb7eb the parameter
was exposed through the control api, but with different default
value.

This commit changes the value to match the default of the control api
parameter.
fix allocation of rt priority constraint struct

The bug was present in the inital version of the code,
commit 606609f9b5488fe00f23d05a4a9d1a6cfe22342d

There was no memory corruption because while
jack_driver_param_value_enum_t is smaller by 72 bytes than
jack_driver_param_constraint_desc_t, for ranges of non-string values,
the last 124 bytes are not used.
fix alsa device name constraint struct allocation

The bug was present in the inital version of the code,
commit ebba58c8eef5c2f217b86b293e15de7bb70d9faf

There was no memory corruption because while
jack_driver_param_value_enum_t is smaller by 72 bytes than
jack_driver_param_constraint_desc_t, for enum constraints,
the last 240 (on 64bit) bytes are not used.
remove the JackSelfConnectMode enum type

It was introduced before the parameter was actually exposed.
The parameter is exposed through a char type in both jackd and
jackdbus, thus a mappnig was required.

This changeset removes the enum and makes the code simpler
at the expense of not allowing arbitrary chars as values.
As it is exposed and used in sessions, it is not arbitrary anyway.
use descriptors for initializing enum constraints

Descriptor initialization reduces risk of mismatch between array size
and element initialization. It also improves code readability by
separating the parameter descriptions separate from the code that
composes the enum constraint structures.

As a side effect this commit makes the self-connect-mode constraint
allocated in dedicated memory chunks, like others enum constraints.
report self-connect-mode on server start
jackd: describe the -a option in the help text
jack_control: display constraints (range and enum)

If available, constraints are now displayed along with the parameter
long description.
alsa driver: remove dither long description

The parameter long description is used through the controlapi/dbus.
Now that jack_control displays the constraints, the dither parameter
long description servers no purpose.
alsa driver: remove midi-driver long description

The parameter long description is used through the controlapi/dbus.
Now that jack_control displays the constraints, the dither parameter
long description servers no purpose.