Add snipMate#CanBeTriggered() function + some refactors

I found it very useful to have an ability to check if snipmate snippet can be triggered or not.  It helps me to make snipmate and other plugins all work within the same `<Tab>` mapping.