Fix unit test breakage from #63
Use same conn to check schema agreement

Before doing this, the control connection would be used to check
for schema agreement.  The schema check could occasionally complete
before the node that the control connection was open to had even
registered the schema change.  By re-using the connection that the
schema change was performed on, we avoid this race condition.

Fixes PYTHON-33
Use select backend for libev

It appears that the epoll backend may have been causing the hanging
write requests at the connection level, which appears to be the last
major cause of PYTHON-27, PYTHON-29, and PYTHON-32.  For now, we will
hardcode select as the libev backend; this would be the best choice in
almost all circumstances, in any case.
Preserve milli-precision in non-prepared datetimes

When a datetime was used for a 'timestamp' value in a non-prepared
statement, all sub-second precision was lost.  After this change,
millisecond level precision will be kept.