add support for selection=old
Support for selection=old.
Escape '\\' in UltiSnipsEdit.

Fixes #308.
Fixed docu for clearsnippets.
Don't complain about undefined function

When lazy loading UltiSnips on specific filetypes ([vim-plug](https://github.com/junegunn/vim-plug) and [NeoBundle](https://github.com/Shougo/neobundle.vim) can do that), UltiSnips#FileTypeChanged() function can be undefined while ftdetect/UltiSnips.vim is loading.
Merge pull request #323 from opennota/master

Check for existing of FT function before calling it.
Back out fix for #323. Fixes #324.
Fix highlighting of Python/VimL commands

Also mark all the highlighting as default, so it can be overridden more
easily by the user.
Fix embedded VimL highlighting

The b:current_syntax variable is set by syntax-include, so it needs to
be unset again or the second syntax-include does nothing.
Fix syntax name

b:current_syntax should be set to "snippets", as that's the filetype,
not "snippet".
Properly handle \` escapes in commands
Fix coloring of shell/VimL/Python command substitutions

Include the sh syntax for shell commands.
Make the matching on !v/!p work more accurately.
Highlight the !v/!p separately from the embedded Python/VimL.

AFAIK the only issue now is that "\`" escapes inside shell/VimL/Python
are not treated as bare "`" characters by the embedded syntax, but I
don't believe there's any way to fix that.
Add hierarchy to syntax file

Redo comments with fold markers to provide an appropriate hierarchy to
the syntax file itself.
Rewrite extends/priority/clearsnippets
Mark up syntax items with 'display' as appropriate
Rewrite syntax matching for `snippet`
Rewrite syntax matching for `global`

The body of a global now only has Python syntax coloring if the trigger
is !p. This matches the actual behavior of UltiSnips. AFAIK right now
globals with other triggers are useless, but this opens the door to
proper syntax coloring for those if they ever gain a use.
Fix empty snippets/globals
Syntax highlight the snippet trigger properly

This supports multiword triggers, docstrings, options, and even
highlights invalid multiword triggers as errors.
Clean up miscellaneous syntax items

Remove a few obsolete items.

Remove the snipTabsOnly item. A tab-only line is not necessarily an
error.

Color leading spaces with a red background, because the default Error
coloring doesn't affect the display of spaces.