Fix issue with placeholders coming out of order.

On each `_rearrange()` call the placeholders just blindly followed the
current placeholder by inserting themselves after it moved (regardless
of whether the placeholders position was before or after the current
placeholder).

The solution was to add a "reference" placeholder that would mimic the
current placeholders position after it moved to dictate whether the
non-current placeholders should be moved before or after the current
placeholder.

There is still an issue of item order after drop however.
Update README
Fix issue with placeholders dropping out of order