fix randstring bug
Allow SHUTDOWN in loading state.
ae.c event loop: API to resize the fd set size on the run.
CONFIG SET maxclients.
getAbsolutePath() moved into utils.c
pathIsBaseName() added to utils.c

The function is used to test that the specified string looks like just
as the basename of a path, without any absolute or relative path.
Only allow basenames for dbfilename and appendfilename.

This fixes issue #1094.
Merge pull request #776 from charsyam/ziplist-bug

fix randstring bug in ziplist.c
pqsort.c: remove the "switch to insertion sort" optimization.

It causes catastrophic performance for certain inputs.

Relevant NetBSD commit:

http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/stdlib/qsort.c?rev=1.20&content-type=text/x-cvsweb-markup&only_with_tag=MAIN

This fixes issue #968.
redis-cli --pipe: send final ECHO in a safer way.

If the protocol read from stdin happened to contain grabage (invalid
random chars), in the previous implementation it was possible to end
with something like:

dksfjdksjflskfjl*2\r\n$4\r\nECHO....

That is invalid as the *2 should start into a new line. Now we prefix
the ECHO with a CRLF that has no effects on the server but prevents this
issues most of the times.

Of course if the offending wrong sequence is something like:

$3248772349\r\n

No one is going to save us as Redis will wait for data in the context of
a big argument, so this fix does not cover all the cases.

This partially fixes issue #681.
redis-cli: introduced --pipe-timeout.

When in --pipe mode, after all the data transfer to the server is
complete, now redis-cli waits at max the specified amount of
seconds (30 by default, use 0 to wait forever) without receiving any
reply at all from the server. After this time limit the operation is
aborted with an error.

That's related to issue #681.