Added non-blocking TLS-connections support.

The `circe-tls-make-stream' function tries to mimic the
`make-network-process' function in it's parameters, but to behave
closely to standard `open-tls-stream'.

Warning: tls-success is not correct by default in Emacs 24.3.1 with
openssl 1.0.1e or 1.0.1f, and it's important for this new function,
so it should be changed to "- Handshake was completed\|Verify return
code".
circe-tls-try-single-command: Also add a process sentinel.

Emacs does not guarantee a process filter to run if the process
fails without emitting any output. Use a sentinel to check for
connection failures.
Fixed some of circe-tls issues

Added a check for process attached to a target buffer, so now it must not
assign the same buffer to different processes, even if they are running
simultaneously.

And removed a call to fail-thunk from the temporary process filter, so now
only it's sentinel calls the fail-thunk (and it does not open excessive
connections on error).
Merge pull request #76 from defanor/master

Fixed some of circe-tls issues
Fixed a check for buffer occupation in circe-tls.

Now it checks if there is an alive (not just any) process bound to a buffer.
Merge pull request #77 from defanor/master

Fixed a check for buffer occupation in circe-tls.
Add PEP support.
git: ignore *.elc files

Adds *.elc to .gitignore.  Useful when people use el-get
to install circe.

Signed-off-by: Tibor Simko <tibor.simko@cern.ch>
Merge pull request #83 from tiborsimko/git-ignore-elc-files

git: ignore *.elc files
Handle ERR_ERRONEOUSNICKNAME during registration.

Circe will now try a completely new nick when the nick we're trying
to use during registration is not valid, to avoid an infinite loop
trying to adjust an invalid nick.

Fixes #60.
Provide an easy way to enable/disable logging globally.

Fixes #63.
Use thingatpt's URL functions to buttonize URLs.

The previously-used regexp did not match all URLs correctly. The new
approach uses the existing functionality in thingatpt, which required
a rework of the way this is handled, as a single regexp is not
sufficient for URLs.

Fixes #65.
Process messages before displaying them.

Circe now runs the display handler for a message after its normal
handler ran. This feels a lot more sane and also should fix topic
diffs.

Fixes #69.
Allow RPL_TOPICWHOTIME for channels we are not on.

Doing a /TOPIC on a channel we are not on now should not cause
an error anymore, as Circe will display the TOPICWHOTIME string
in the last active buffer if the specific chat buffer does not
exist.

Fixes #73.
Handle RPL_TOPICWHOTIME time stamps of 0.

Fixes #74.
Provide tracking-buffer-{added,removed}-hook.

These hooks are run when a buffer is added or removed from the
list of tracked buffers.

Fixes #70.
Add circe-server-buffer-name option.

Setting this variable, or providing the :server-buffer-name network
option, changes the name of the server buffer Circe creates.

Thanks to Samuel Loury for the idea and initial patch!