Initial refactoring of user system

This patch refactors the code for storing the online users to use a
rbtree, as well as modifies it to storing 'struct irc_user' objects,
which hold the actual username as well as other user flags.
Removing unneeded variable
Refactoring reply handler setup

This refactor removes the REPLY_HANDLER macro, and moves all the reply
handlers to being static functions internal in ./src/replies.c . The
reply_handler_list[] is still extern, so nothing is broken by this
change (The reply handler list contains the addresses of all the now
static functions, they're accessed via function-pointers.) They shouldn't
be called directly anyway and their inclusion in the header was a
mistake.

Also removed was the reply_handler_count. It was never used and never
set since the reply_handler_list is null terminated (One should check
for a null function pointer and then bail).
Tmp commit