Improved s:EscapeCtagsCmd() for windows cmd.exe to eliminate issues when
a:ctags_bin calls a batch file that uses %~dp0. Changes include:
- Enable ctags_args to be a list
- Changed default ctags_args to be a list to improve robustness of
  s:EscapeCtagsCmd()
- Do not escape 0th argument of ctags_cmd for cmd.exe when it is not
  necessary because otherwise batch files may not return expected value
  for %~dp0
- Updated tagbar documentation about string and list value types for
  ctags_args
See https://github.com/majutsushi/tagbar/issues/133
Removed unnecessary | around 'shell'
Simplify conversion of g:tagbar_iconchars into regexp.

With join() and escape(), the steps can be simplified.
FIX: Avoid that the sigils used for highlighting match inside a tag.

When there's a tag e.g. "foo-bar", the "-bar" part is matched as TagbarKind. Add a zero-width condition to all sigil patterns that allow only whitespace characters before the sigil.
FIX: Avoid matching public / private methods as TagbarKind.

When g:tagbar_iconchars = ['+', '-'] (default on Windows), and viewing a filetype (e.g. java) that has visibility information (i.e. the [-+#] sigils), the method is mistakenly highlighted as TagbarKind. Restrict its matches to when the sigil is at the beginning of the line to avoid the false matches at the indented method tags.
Merge pull request #135 from darcyparker/issue133_ctagsbin

Improved `s:EscapeCtagsCmd()` for windows `cmd.exe` to eliminate issues when `a:ctags_bin` calls a batch file that uses `%~dp0`.
Allow project-specific type config
Make createKinddict() an instance method
Fix TagbarScope pattern
Merge branch 'inkarkat-enh-syntax'
Re-enable BufReadPost event
Move tests into separate repository