BUG: series assignment with a boolean indexer AND a series as a value would give incorrect results

```
In [1]: import numpy as np

In [2]: import pandas as pd

In [3]: x = pd.Series(index=np.arange(10))

In [4]: y = pd.Series(np.random.rand(10),index=np.arange(10))

In [5]: y
Out[5]: 
0    0.197830
1    0.134425
2    0.766618
3    0.057765
4    0.790927
5    0.153636
6    0.585305
7    0.906787
8    0.647155
9    0.494154

In [6]: x[y>0.5] = y

In [7]: x
Out[7]: 
0         NaN
1         NaN
2    0.197830
3         NaN
4    0.134425
5         NaN
6    0.766618
7    0.057765
8    0.790927
9         NaN
```