support primary and backup cluster. fixed #21
add more coverage test cases
Merge pull request #25 from TBEDP/double-read

try to read from backup cluster when primary cluster down.