vim.bindeval seems faster than just repr'ing python values
Improve performance for multiple patterns
Expose spans property
Optimize the common single-pattern case
Remove more overhead
Fix constructors for uncommon matching modes
Small optimizations and cleanups
Smartcase only works if ignorecase is on
Allow plugin configuration to be sourceable idempotently