Safe max connections to handle reaching max open file limit

Issue: https://github.com/twitter/twemproxy/issues/97

I'm trying to fix the 'reaching max open file limit'.

At first, I just ignore the EMFILE/ENFILE and setting `recv_ready` to 0.
But, if there are more pending events, setting `recv_ready` to 0 will lost these events. Sometimes the twemproxy can go back to normal state. 
This fix is just a little better than closing the proxy socket directly.

Then, I found the way redis handling max connection is graceful. 
Here we go. The new fix maintains a safe max number for client connections and checking the current connections after every accept. So it won't get EMFILE or ENFILE theoretically.

We're starting to use the new version in production.

BTW, it adds new stats `curr_connections` and `total_connections`.

I think we might still hit this scenario - One instance where I see this happening is that you close the connection() from the code (decrement the counters), but the sockets are still in TIME_WAIT state and hence are not available for accept() sys call.

So, instead of panic, we should log() and return NC_ERROR and not set p->recv_ready to 0