Catch errors on streaming ListView#add

ListViews are useful because you can create one, pipe in some streams (to the ListView itself as well as to `ListView#more`), and it takes care of converting Content to ContentViews, adding it to the DOM, etc. That is, it's good at creating and appending subViews over time.

Unfortunately, this is a complicated enough process that Errors are inevitable. For example, a piece of Content in Livefyre's backend could have an attachment that, when inserted in a `document`, causes an exception to be thrown on the page. Should apps using ListView or Collection keep throwing that error and cause everything to break? Probably not!

Now, when `ListView#add` is called by streaming updates (`ListView#write` or when `ListView#more` is read by the more-mixin), any underlying errors will be caught and re-emitted on the ListView as an `error.add` event.

There is a default handler for this event which will currently handle ListViewInsertErrors. If this is the underlying error, then the ListView will attempt to ensure that the offending subView is `.remove`d from the listView.

If you do not like this default behavior, you can implement your own `listView.catchListViewAddError`

---

This also fixes a CSS bug that would cause `<script>` elements in attachments to be display: block instead of hidden.

(this may be a naive question but)  do we unbind automatically on destroy? or should we?