Allow custom add/removeEventListener in $.event.add/remove

This is to support integration with the atom global command registry
for backward-compatibility purposes.
3.7.0
Export viewsForElement, which gets all views under a raw DOM node
3.8.0
Revert "Allow custom add/removeEventListener in $.event.add/remove"

This reverts commit b49fecf0a312ed36dac6c47ad2d32f06e251b7c7.
Replace attached/removed hooks with versions based on custom elements

The hooks are now called ::attached and ::detached instead of
::afterAttach and ::beforeRemove for reasons described below.

This eliminates the need to use SpacePen’s modified version of jQuery to
attach and detach SpacePen views in order to get the lifecycle hooks.
Since we are using direct DOM manipulation in Atom core this is
essential to making SpacePen views compatible going forward.

The semantics are different and more limited. The custom element
lifecycle callbacks only allow detection of attachment and detachment
to/from the actual DOM, not also another detached element. We also
can’t distinguish between jQuery’s concept of “detachment” (meaning the
element will be reattached) and “removal” (meaning the element is gone
forever). Instead we offer only detachment and attachment detection.
Implement ::view with expand properties and not ::data

Using ::data is much slower.
:lipstick:
Implement $.fn.command directly in terms of Atom command registry

This transforms $.fn.command from something that made commands dependent
on jQuery to just a convenience method for registering a command on the
current element with the global registry. It no longer accepts a
selector or special options, but should ease the conversion.
Don’t use custom elements in phantomJS test suite
Fix super call
4.0.0
Null guard element in $.fn.view
4.0.1
Implement ::view with expand properties and not ::data

This allows elements from different copies of jQuery to call the view
method and get back views. Relying on jQuery.fn.data doesn’t allow for
this because each copy keeps its own version.
Remove spec now that $::view always works
3.8.1
Merge branch 'master' into atom-future-proof

Conflicts:
	package.json
	spec/space-pen-spec.coffee
	src/space-pen.coffee
Don't redefine custom elements global
4.0.2