Adding a cache on error to vtgate for topology.

This should make a temporary error in underlying topo
server invisible to clients.
Fixing unit test.
Moving tablet-protocol flag down to go/vt/vtgate.
Fixing missing import.
Fixing the resilient topo layer to not crash.
No need to wrap code in try/raise in tests.
Now adding user / password and encryption.

To vtgate.
Adding encryption for vtgate -> vttablet.
Merge branch 'master' into replication
Fix typo in README.markdown.
Balancer dialer now uses EndPoint.

So we don't need to pass down the port, and it's more flexible.
Remove deprecated tablet fields.
Remove Tablet.GetAlias getter.
Remove Tablet.GetHostname getter.
Fixing test file after comment.
Merge branch 'replication'
Moving an init.
Adding a cache with a 1s TTL to vtgate topo server

And a qps test. In front of zookeeper, qps is now 36-38k,
compared to 45-47k qps for zkocc. So we're very comparable,
for a much simpler implementation that doesn't rely on watches.
Fixing data race in context. And it's faster too.
Merge branch 'master' into refactor-tablet-step-2