remove js components from the repo

Unfortunately, we can't rely entirely on package systems like bower,
since we want IPython to be usable from git without requiring *users* to have node.

This PR just moves the third-party components to a separate repo (ipython/ipython-components), and uses this as a submodule.  That way we don't pollute the *real* repo tracking all kinds of irrelevant files.  It does mean that a fresh checkout of IPython must run

    git submodule init
    git submodule update

to get started.  With this, updating to a new version of CodeMirror, etc. should be easier to review, because the diff related to changing CodeMirror will just be a changed hash, rather than hundreds of changed files.