big changes, use Factory Pattern Design to rebuild client.
Merge branch 'master' of git@github.com:knightliao/disconf.git