[WIP][DO NOT MERGE] Dialog component

Does this result in a double lookup from jQuery? Is it more efficient just to use
```js
this.$target = $('[data-dough-dialog-target="' + this.$trigger.attr('data-dough-dialog-trigger') + '"]');
```