Allow pure custom element pane item views

Status: PR ready for merge once we get a green build.

The workspace has already been converted to custom elements, but [`PaneElement::activeItemChanged`](https://github.com/atom/atom/blob/master/src/pane-element.coffee#L55) still expects all pane item views to have `.__spacePenView` shim properties and attaches, hides, and shows the views with jQuery. This needs to be converted to support raw custom elements that are attached, hidden, and shown via native DOM APIs. Whil doing this, it also still needs to support `afterAttach` and `beforeRemove` lifecycle hooks for any SpacePen wrappers for those elements.