This is a requirement in order to support plugin options over the
extension API, which is bound in the sys injector; otherwise, there
would be no way for the extension API implementation to access a
DynamicMap<DynamicBean> from a child injector.
The downside is it silently breaks existing plugins that bind their
DynamicBean implementations in HTTP/SSH modules. In other words, the
tests would fail if we didn't change them; the same goes for plugins.
The upside for plugin authors is that this can make plugin
implementations simpler (as in the test): plugins that aren't actually
contributing SSH commands or HTTP endpoints will no longer need to
define separate modules just to register DyamicBeans.
Overall, this change has only minor downsides for plugin authors, and
this is outweighed by the upside of making it possible to pass plugin
options to the extension API.
Change-Id: I3fd7de21565f6f65519936f47694bcf23e05a9fd