This separates Semantic layer from language major modes, so Semantic features are only enabled when the layer is added, allow user to choose using it or not. Conflicts: contrib/lang/c-c++/packages.el