Fix the TestConcurrent test to pass Go's race detection.

Running the race detection against the previous version of this test reveals
race conditions surrounding the "max" variable. Subsequent work in this patch
also revealed race conditions surrounding canStop.

Additionally, it is not valid to call *Testing.FailNow in goroutines started
by the tests.

This should retain the meaning of the original test while cleaning up the race
conditions and guaranteeing the *Testing.Fatal call occurs in the correct
goroutine.
Fix appendLengthEncodedInteger for large numbers > 0xffffff
Fix bit shifting for readLengthEncodedInteger
Add unit tests for length encoded integer related functions
Merge pull request #171 from cxmcc/lengthEncodedInteger

Fix appendLengthEncodedInteger for large numbers > 0xffffff
Merge in julienschmidt's suggested improvements.
Merge pull request #166 from thejerf/master

Fix the TestConcurrent test to pass Go's race detection.
Merge pull request #170 from cxmcc/minor

Replace recursive approach with iterative approach for readPacket()
Add Google Cloud SQL support for App Engine.

It uses Cloud SQL as a database if it runs on Google App Engine with
using cloudsql DSN.

appengine.go includes a build constraint for Google App Engine (GAE)
(http://blog.golang.org/the-app-engine-sdk-and-workspaces-gopath) to
avoid an error outside App Engine and provide an exception. Using
Google Cloud SQL with App Engine GO SDK is not supported yet. It is a
SDK limitation.
Merge pull request #167 from dalinaum/cloudsql

Add Google Cloud SQL support for App Engine.
infile: lazy map init
infile: better buffer size calculation
infile: refactoring
infile: new deferredClose func instead of lambda funcs
Merge pull request #174 from go-sql-driver/infile

infile: refactoring
Comment typo