* liece-message.el: Overhaul; don't depend on dynamic binding.
(liece-message-brackets): Abolish.
(liece-message-tags): Abolish.
(liece-message-empty-predicate): Abolish.
(liece-message-make-open-bracket-function): New variable.
(liece-message-make-close-bracket-function): New variable.
(liece-message-make-name-function): New variable.
(liece-message-make-global-name-function): New variable.
(liece-message-type): Abolish; define as function.
(liece-message-target): Abolish; define as function.
(liece-message-speaker): Abolish; define as function.
(liece-message-direction): Abolish; use liece-message-own-p.
(liece-message-predicate): Abolish.
(liece-message-brackets-function): Abolish.
(liece-message-tags-function): Abolish.
(liece-message-buffer-function): Rename to liece-message-buffers.
(liece-message-parent-buffer): Rename to liece-message-parent-buffers.
(liece-message-make-open-bracket): New function.
(liece-message-make-close-bracket): New function.
(liece-message-make-bracket): New function.
(liece-message-make-name): New function.
(liece-message-make-global-name): New function.
(liece-display-message): Rewrite; remove autoload cookie.
(liece-make-message): New function.
(liece-message-private-p): New function.
(liece-message-external-p): New function.
* liece-misc.el (liece-own-channel-message): Move to liece-message.el.
(liece-own-private-message): Ditto.
* liece-commands.el (liece-command-message): Don't use
liece-message-empty-predicate.
* liece-ctcp.el (liece-ctcp-action-message): Use new API.
(liece-ctcp-insert): Ditto.
* liece-dcc.el (liece-dcc-chat-filter): Use new API.
* liece-handle.el (liece-handle-notice-message): Use new API.
(liece-handle-privmsg-message): Ditto.