PYCBC-109: Handling of negative TTL

This commit adds tests and changes to ensure that the TTL value passed
is a valid TTL (or no TTL). Among other things, this checks for negative
values, non-numeric values, and overflows

Change-Id: Ib6055af73da00fa5ec736ed5b91398adf0cb070a
Reviewed-on: http://review.couchbase.org/26375
Reviewed-by: Volker Mische <volker.mische@gmail.com>
Reviewed-by: Rami Chowdhury <rami@esplorio.com>
Tested-by: Matt Ingenthron <matt@couchbase.com>