use cstringio rather than += on string in libev
support lz4 compression if it is available
Handle big endian message lengths
Add a note about compression to install docs
Handle missing callback more cleanly
Merge pull request #33 from michaelplaing/cqltypes

Amend 'set' and 'map' types to conform to C* sorting/ordering.
Update type tests for ordered maps, sets

Related to changes in #33
Remove old comment about null values
Ignore flake8 warnings about dupe imports
Raise TypeError for non-string BOP tokens
Error on negative max_attempts argument
Simplify lookup of cql data types
Raise Exception on double Cluster shutdown
Handle IPv4 inet addresses on Windows

IPv6 addresses are still not supported due to a lack of
inet_ntop and inet_pton, but this only matters if an
IPv6 address is actually used.  Otherwise, we shouldn't
care.

Resolves PYTHON-18
Add minimal handling of DynamicCompositeType

This simply allows the driver to not choke when it inspects
the schema sees DynamicCompositeType.
Return string from KeyspaceMetadata.as_cql_query()
Correctly handle multi-message reads

Data at the end of the first message was accidentally
being discarded (by overwriting self._iobuf prior to
reading the remainder).  There's also some other minor
cleanup and reorg.
Merge branch 'pr_20_merge'
Use 2.6+ "except ... as ..." syntax
Fix code formatting in README