add Duplicate button to dashboard

finish PR #5659

also fixes some related bugs with the path/name changes.

closes #1877

ping @ellisonbg for UI review
I think the above three lines can be simplified as:
```js
var name = item.data('name', name);
var path = item.data('path', path);
```