bug fix in schema reload

Now that schema reloads can be triggerred within
one second, we have to conservatively include the
last second to account for the lost granularity.
Merge branch 'master' into rowcache
Merge branch 'master' of github.com:youtube/vitess
vtgate: add panic handling for public functions
Add MultiSnapshot and MultiRestore events.
Merge branch 'suguwork'
optimize vertical_split.py test

We don't need to wait one second for the schema updates
any more since reload schema can handle these now.
Add 'curl' dependency, used by integration tests.
Add version notes on Getting Started doc.
Fixing a syntax error in ORDER BY clause.
Shard name is now lower case.
Use failfast in python tests.
Normalize loopback IP addresses to avoid spurious validation errors.
Merge branch 'trusty'
Use VT_TEST_FLAGS and stop on error in queryservice_test.
Add --mysql-flavor flag to integration tests.
Add event for VerticalSplitClone worker.
query service: Go back to being proactive about ddl updates

The delayed reload causes problems in some tests. This CL
proactively reloads the table. If there are unexpected states
during the reload, then the most conservative decision is taken.
This will allow the query engine schema to become eventually consistent
with the db.
Simplified rowcache connection stack

- memcache connection does not support the possibly racy
  IsClosed function any more.
- Got rid of the connection wrapper for CachePool. We just
  use *memcache.Connection instead.
- Callers of Get call Put instead of going through the
  Recycle wrapper. If there was an error, they close conn
  and set it to nil. This makes it easier to reason about race
  conditions.
- Deleted obsolete GenericCache.
Now exposing the lockserver version for keyspace and shard.