Rearchitecture with constant indexing.

- Pulls out indexing.
- Pulls out settings.
- Better tab key / name resolution.
New Architecture. Fixes performance. Reduces Code.

- Dramatically improves cleanup task.  Simply using 'undo' command!
- Brings me a lot closer to doing multiple views.
- Removes tab_utils, because no longer using tabs!
- Removes JumpyCloser because no longer using tabs!
- Change Plugins to windows for edit buffers etc, more flexible.
- Creates index.py for indexing functions.
- Removes async_utils.py.  Don't need it for this plugin anymore.
- Cleanup GotoPoint a bit.
- New settings file, might be removed eventually.
- Closes #25
- Closes #22
- Closes #21
- Closes #20
- Fixes #4