created an internal goon.timeout() function since appengine.Timeout(context,duration) didn't work in the development environment

Even further, since the timeout call didn't work in development, this fix uses goroutines (and in production, appengine.Timeout()) so any loss of temporary network connectivity with an
appengine service will still timeout properly