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