feat(special): New signal signature that allows for taking arguments.

Now it takes the form of - <special>/<type>[<arguments...>]
- where <special> is the special name, e.g. hub, sig
- where <type> is the type of the special, e.g. subscribe, start, end
- The optional <arguments...> is one or more arguments passed to the special provider, that is parsed by util.getargs.

In order to be back-compat with the 2.x (old) special signature, we transform them using `compose.mixin.config.pragmas` into the
new format, thus the old format is *deprecated*.
 - hub:memory/foo/bar => hub/subscribe(foo/bar, memory=true)
 - dom:#foo.bar[name="baz"]/click => dom/click('#foo.bar[name="baz"')
v4.0.0