implement a new hashing scheme

This changes the hashing scheme completely. Ketama is no longer used.
Instead a consistent hashing strategy using murmur hash is used.
Additionally, the only external dependency is now libev -- the glib
dependency is removed (since there is no longer a need for GHashTable
objects) and the openssl dependency is removed (since murmur hash is
implemented natively).

This should be MUCH faster than before, because there's a faster string
hashing function, and no GLib hash objects need to do -- keys are hashed
directly to a backing tcpclient object.

I've added some tests.

Note that this uses a totally different config format.
small fixes, and detect a memory leak

the full fix for the memory leak is to come in another commit
add a reconnect mode
remove debug messages
really fix debugging changes
describe virtual sharding
update logging to be more granular
add stresstest program
make this build on debian again...
make the config format backwards compatible
Merge pull request #26 from uber/hashring

implement a new hashing scheme
Release 1.4.0
add a new yaml config format
add a command line option (-t like nginx) to check config format
fix all of the bugs and tests
update readme
highlighting
fix READMe typo
Merge pull request #28 from uber/yaml_config

add a new yaml config format
no more libketama