Replace ForkChannelService with ForkChannelFactoryService

This allows consumers to create a fork channel from a ChannelFactory - rather than requiring the installation of a service.  Also ChannelService can now supply both ForkChannels and JChannels, since the details are abstracted by the ChannelFactory implementation.
This also begins the work of allowing fork channels to supply additional protocols to the fork stack.