dahdi: Parallel auto_assignment from userspace should match auto_assignment from kernel space.

The user-space components of the span assignment can be run in parallel.
Typically by udevd. Therefore it is possible for auto matic span_assignment from
user space to *not* always match span_assignment from the kernel when there are
multiple devices in the system when auto_assign_spans is 0.

This change keeps devices on a list in registration order. When a devices
auto_assign attribute is written to from userspace and auto_assign_spans=0,
dahdi will check if this is the oldest registered device. If it is the oldest
registered device, auto span assignment will happen like normal, but if it's
not, it will wait for up to 5 seconds to become the oldest assigned device under
the assumption that the devices are being auto assigned either serially in
uevent order, or in parallel by udevd.

Signed-off-by: Shaun Ruffell <sruffell@digium.com>