Make connection the socket object owner

Improve the socket interface by making the amqp_connection_state_t
object the amqp_socket_t owner, and tie its lifetime to the connection's
lifetime.  This prevents a class of silly errors where the socket object
isn't freed, or the socket object is assigned to two different
connection objects
Get rid of amqp_socket_error interface

Get rid of experimental amqp_socket_error interface. Errors are returned
using the error codes from the primary function
FIX: remove amqp_set_socket() from public API

This should've been removed in da9c2c109a
Squash OpenSSL deprecated warnings on MacOSX 10.7+
Add nonblocking connect support
Make sure date math is done in 64-bit prec

Some platforms declare tv.tv_sec and tv.tv_usec as long which is 32-bit
which will integer overflow in our date math
Add amqp_table_clone() to deep-copy a amqp_table_t
Add a high level API for consuming messages
Ignore MacOSX .DS_Store files
FIX: Incorrect assert in wait_frame_inner

Probably introduced when consume_one_frame() function was added, and
wasn't found during testing because its rare to see partial recv of
frame when testing locally.  Need to devise a test for this.

Fixes #126
FIX: amqp_table_clone handle 0-len table correctly

amqp_pool_alloc_bytes() has undefined behavior when a 0-length buffer is
allocated. Properly handles cases where 0-length tables or buffers are
encountered when cloning a table.

This fixes #127
FIX: basic_properties_clone handle 0-len strings

Properly handle 0-length strings in amqp_basic_properties_clone()
FIX: handle 0-len msg body in amqp_read_message
BUG: double-free in ssl-socket on connect failure

In amqp_ssl_socket_open() set self->ssl to NULL after SSL_free() to
avoid calling SSL_free() on a SSL object that has already been freed.

This fixes #129 crash while call amqp_destroy_connection() with ssl
FIX: amqp_open_socket not defined.

This fixes a regression introduced in 6ad770dc where the
amqp_open_socket() function is no longer defined.
Provide defaults values for amqp_login

Provide default values for:
 - channel-max as AMQP_DEFAULT_CHANNEL_MAX 0 = unlimited
 - frame-size as AMQP_DEFAULT_FRAME_SIZE 131072 = 128KB
 - heartbeat as AMQP_DEFAULT_HEARTBEAT 0 = disabled
Add compile and runtime library version functions
Document public API
FIX: bring autotools build system up to date

Remove the amqp_framing.c/.h regeneration logic as it breaks make dist.
Bring the EXTRA_DIST list up to date with whats in the repo
FIX: missing files in dist package