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
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
Support legacy attach hooks for atom core compatibility

If you set useLegacyAttachHooks to true on the view prototype to true,
then afterAttach and beforeRemove will be used to drive the attach hooks
instead of custom elements, allowing for simulated DOM attachment to
still work. This feature should never be used outside of Atom core, so
I will leave it undocumented. It’s required to preserve behavior, but
we can’t commit to it going forward.
4.1.0
Null-guard hook calls when supporting legacy attach hooks
4.1.1
Document changes
Revert "Null-guard hook calls when supporting legacy attach hooks"

This reverts commit c833877584dc0c2aa572243b5484750cfbc35a93.
Revert "Support legacy attach hooks for atom core compatibility"

This reverts commit 8e1d1118bbf67dc210650255c999ecbb41d72134.