Dynamic query rule support for vttablet

A few changes in this patch:

1. QueryRuleSources top level framework to manage dynamic query rule sources
    - Pluggable machanism for new dynamic query rule implementations
    - Complete decouple of query rule management and query service
2. File based and Zookeeper based dynamic custom rule support
3. Unit and site tests for dynamic query rule machanisms
Polling should be avoided. Either use inotify or don't poll at all. They can always restart vttablet in the worst case.
Go has a low level API for inotify, which may be fun to play with.