* helm-source.el (helm-source): Remove the init slot.
* helm-bookmark.el: Don't use type.
* helm-source.el: Allow inheritance of types.
* helm-bookmark.el (helm-source-basic-bookmarks): inherit from type
  bookmark.
(helm-source-bookmarks): build it from helm-source-basic-bookmarks.
* helm-source.el (helm-source): name slot default to nil.
* helm-source.el: Handle match plugin from classes.
(helm-source): remove no-matchplugin and add matchplugin.
(helm-source-mp-get-search-or-match-fns): Setup mp fns.
(helm-source-in-buffer): Remove candidates-in-buffer and dont plug match
plugin.
(helm-source-sync): dont plug match plugin.
* helm-source.el (helm-source-mp-get-search-or-match-fns): Use let.
* helm-source.el: Add type buffer class.
(helm-source-async): Set matchplugin to nil by default.
* helm-grep.el: Use matchplugin slot.