Added support to Goon for users to set timeout values for Memcache and Datastore

At the moment, those values are only respected in GetMulti()

GetMulti() will now return the first set of values it can find while only making a Datastore request if the memcache request exceeds it's timeout value or fails to fetch all data

Added a test that has almost 100% coverage of the new code, however there's a race condition in that for one case, the Datastore request literally needs to timeout

This starts work on #15 but there's more to do