initial commit.
fixed bug
fixed down hosts should not be saved to database.
minor code update.
minor code update.
* refactored code.
Merge remote-tracking branch 'choose_remote_name/master'