Better shelf placeholders

Instead of making a .drag_placeholder element and trying to get it to
behave exactly like the shelf item, just clone the shelf item. This
prevents the rest of the items from moving at all when picking up a
widget.

Co-Authored-By: Antoine Catton <acatton@fusionbox.com>