JMX/Infinispan Capabilities and Requirements

Notes:

1) This makes the JMX requirement optional. The JMX requirement is used to support statistical mbeans from the caches and the JGroups channel.
  a) The current cache manager dependency on JMX isn't optional, although the code the uses the injection supports having nothing injected
  b) The current JGroups channel dependency on JMX isn't optional. But I changed ChannelService to not require JMX.
2) Tests of what happens with this dependency available should be added. The current tests don't use admin-only even though a bunch of required services, including JMX, are not available. I believe this only works because the various cache services are configured to be ON_DEMAND so the missing dependencies are not detected.