Rename GetMRSplits to SplitQuery

The functionality is not specific to MapReduce, any job that wants to
split a large query into non-overlapping sub queries can use this end point.
SplitQuery should be shard agnostic

Specify total number of splits instead of splitsPerShard
Rename QuerySplit to SplitQueryPart
Merge pull request #144 from youtube/split-query

Minor refactor of GetMRSplits
Add a hook to zk TestServer for use in tests.
Expand lock to avoid race in RebuildShard.

Lock before reading topo, to prevent another rebuild from writing
fresher data that could then be overwritten with stale data by a slow
rebuild.
Merge pull request #145 from youtube/rebuild

Expand lock to avoid race in RebuildShard.
Merge pull request #146 from youtube/vtgate

Vtgate
Make Vitess context types conform to the go.net/context API.

Using this common API will hopefully allow integration with other
projects both internally and externally.
Add generic-context accessors.

Create a helper-module callinfo for pulling call-related information out
of contexts, an rpcwrap instantiation of this logic, and some rpcwrap
helpers to pull rpcwrap info out of contexts.
Make proto.Context members private.

This means there is no reason to directly use this type, in stead a
context.Context interface should be used.

Conflicts:
	go/vt/tabletmanager/gorpctmserver/gorpc_server.go
	go/vt/tabletmanager/rpc_server.go
Reduce vtcontext to gcontext.

The usecases of the extra methods are now provided by callinfo.

Conflicts:
	go/vt/tabletserver/query_engine.go
	go/vt/tabletserver/query_list.go
Remove non-context methods from proto.Context API.
Make proto.Context private and consolidate on context.Context.

Used some context.TODO calls for rpcplus calls that don't take a
context. Still deciding what to do with those.

Conflicts:
	go/rpcwrap/rpcwrap.go
	go/vt/tabletmanager/gorpctmserver/gorpc_server.go
	go/vt/tabletserver/gorpcqueryservice/sqlquery.go
	go/vt/topo/toporeader.go
	go/vt/vtgate/gorpcvtgateservice/server.go
Eliminate vtcontext.Context.

Everything should use go.net Context now.
Remove methods on DummyContext not required by go.net Context.
Merge pull request #147 from plobsing/context2-electric-boogaloo

Use go.net context.Context
Remove zkctl binary that was accidentally checked in.
Make queryservice healthcheck failure string sane.

It was "notokok", which makes no sense. "not ok" is perfectly clear and
equally valid.
Merge pull request #148 from plobsing/accidental-binary-checkin

Remove zkctl binary that was accidentally checked in.