fault tolerant weight_manager

This PR is correspond to #657 .

`mixable_weight_manager` manages the weights of features and get/put the difference of features.
But it was not implemented join mechanism for newbie process.
And some of `put_diff` was dropped, the difference will not recover forever.

The same mechanism of #590 will be appropriate for differential vectors.

The MIX log will become like
```
I0213 20:35:24.461978  6688 linear_mixer.cpp:325] starting mix:
I0213 20:35:24.463982  6688 linear_mixer.cpp:402] success to get_diff from [x.x.x.x:9198, y.y.y.y:9199]
I0213 20:35:24.464928  6689 linear_mixer.cpp:548] put_diff with 14 bytes finished my model is still up to date. versions[56, 56]
I0213 20:35:24.465333  6688 linear_mixer.cpp:451] success to put_diff to [x.x.x.x:9198, y.y.y.y:9199]
I0213 20:35:24.465349  6688 linear_mixer.cpp:463] mixed with 2 servers in 0.003342 secs, 14 bytes (serialized data) has been put.
I0213 20:35:24.465365  6688 linear_mixer.cpp:333] .... mix done. versions[56, 56]
```