dl.c: Removed dl_user_dl.active and use a pointer in dl_user instead
dl.c: Removed dl_user_dl.active and use a pointer in dl_user instead

This allows a significantly faster lookup of which dl_user_dl item is
active for a given dl_user struct. And since dl_user_dl contains a
pointer to dl_user, the old "is this dud item active or not check"
becomes: dud->u->active == dud.

This will make setting user-specific errors easier to implement and more
efficient. (but is still a TODO at the moment)

srijan/ncdc,srijan/ncdc,Tilka/ncdc,Tilka/ncdc,srijan/ncdc