scripts/idlerpg: fix script format change straggler
modules/http_client: catch callback errors
scripts/urbandict: decode entities in word
scripts/title: fix lookup for some Twitter links
scripts/relay: use symbols for network names
scripts/relay: fix relays, clean formatting

Relays were not working due to canonization changes. That has been
resolved, now.

Messages now also include channel names. Original (non-canonized) names
are used when provided by the server.

Thanks to blairsooley for reporting issues and helping with this.
modules/http-client: add TODO for errback
scripts/relay: remove debug output
lib/channels: move users to class, add prefix method
lib/message: add nick_with_prefix method
scripts/relay: include nick prefix in output
scripts/relay: add option for channel name output

Also moved raw line generator to a helper. Eventually, the majority of
the script will be in helpers. We're getting there.
scripts/relay: check for dupes both ways
scripts/relay: fix PART handler
scripts/relay: fix KICK output
attempt to fix stupid encoding problems

Added fix_encoding! function to String. This forces the string to
ASCII-8BIT encoding, replacing invalid or undefined characters.

Module http_client calls fix_encoding! on all response bodies, hopefully
resolving the numerous encoding errors that came up when parsing
content.

All force_encoding calls have been removed from scripts.

Markov script uses fix_encoding! when reading data.
scripts/relay: don't use prefix for nick look-up (oops)
core: only wait about 10 seconds for clean disconnections
scripts/relay: don't try to use prefix on JOIN
scripts/relay: fix typo