Using build tags in order to test timeout related code changes to goon

Conflicts:
	timeout.go
Implementing using appengine.Timeout for memcache.Get variance in GetMulti
Merge branch 'master' of https://github.com/mjibson/goon into memcachevariance
Updating documentation to reflect memcache variance features
Merge branch 'master' of https://github.com/mjibson/goon into memcachevariance

Conflicts:
	goon.go
Updating documentation for the memcache variance feature
Merge branch 'memcachevariance' into memcachevariancetesting
Removing the unneeded reference to the appengine_internal.CallError struct
adding additional timeout tests for GetMulti
When handling errors or empty results in memcache, the datastore operation has to be setup
Fixed test so that this issue was caught
Reverted testing features for this particular branch
Correcting which keys should be fetched by the datastore
adding test to make sure we're pulling cache entries from the cache, memcache entries from memcache before (or in addition to) going to the datastore
Merge branch 'memcachevariancetesting' into memcachevariance
clarifying the if statement when a memcache.Get comes up empty inside GetMulti
clarifying the if statement when a memcache.Get comes up empty inside GetMulti

Conflicts:
	goon.go
GetAll can now return empty structs with the goon key fields set in the case of keys-only queries.
Improved keys-only query test cache tests.
Embedding the struct and bumping up the memcache timeout value for the tests that don't want memcache to timeout.
adjusting default memcache.Get() timeout value
Thanks @xStrom - https://github.com/mjibson/goon/pull/21#issuecomment-32904674