Adds %lsext magic and entry_points for ipython_extensions, ipython_exporters

It would be great if it was possible for:

1.a. users to detect which extensions are [loaded, registered, in IPYTHONDIR] at runtime (`%lsext`)
1.b. developers to 'register' third-party extensions as `ipython_extensions` in their `setup.py` (`ipython_extensions`)

2.a. users to use third-party exporter 'plugins'
2.b. developers to 'register' third-party exporters as `ipython_exporters` in their `setup.py` (`ipython_exporters`)