Feature: de/activate-extra-mode

Adds functionality to deactivate/activate extra modes. Two new functions
are added: `activate-extra-mode', `deactivate-extra-mode'. These two
functions activate and deactivate snippets for the given mode in the
current buffer. The use-case for the functions is to have a simple
interface for adding new snippets when activating a new minor mode.

The previous way of doing this, using `yas-extra-modes', is made
obsolete and the new deactivate/activate should be the preferred
instead. The reason for making `yas-extra-modes' obsolete is to keep a
simple interface.

See issue #420 for more information.
widen before deleting regions

This avoid problems with c-mode's after change hooks.
add: external test for issue #404
Closes #404: merge remote-tracking branch 'npostavs/widen'
Merge pull request #424 from ljos/de/activate-extra-mode

Feature: de/activate-extra-mode