Add subword navigation

Fixes #1982 and an alternative to #3961.  Also, hopefully can used with https://github.com/atom/vim-mode/issues/377.

I haven't added keymaps yet.  But maybe:
```cson
'.platform-linux .editor, .platform-win32 .editor':
  'alt-left': 'editor:move-to-previous-subword-boundary'
  'alt-right': 'editor:move-to-next-subword-boundary'
  'alt-shift-left': 'editor:select-to-previous-subword-boundary'
  'alt-shift-right': 'editor:select-to-next-subword-boundary'
  'alt-backspace': 'editor:delete-to-beginning-of-subword'
  'alt-k': 'editor:delete-to-end-of-subword'

'.platform-darwin .editor':
  'ctrl-alt-left': 'editor:move-to-previous-subword-boundary'
  'ctrl-alt-right': 'editor:move-to-next-subword-boundary'
  'ctrl-alt-shift-left': 'editor:select-to-previous-subword-boundary'
  'ctrl-alt-shift-right': 'editor:select-to-next-subword-boundary'
  'ctrl-alt-backspace': 'editor:delete-to-beginning-of-subword'
  'ctrl-alt-k': 'editor:delete-to-end-of-subword'
```

Sorry for changing most lines in *text-editor-spec.coffee*.  I had to add a separate fixtures file for better tests.  If there is a better way than wrapping everything in a describe block, than let me know.  I could make a separate file, but that's probably not what you want.

Also, I can't figure out how to go left on the first line when there is only white space, see `cursor.moveToSubwordBoundary()`,  `/^[\t ]*$/` isn't working.