Factor out ServiceCombiner from MetaInfCombiner

Created a new interface: Combiner - and extracted the service combining
logic from MetaInfCombiner to a new ServiceCombiner (which implements
Combiner).

The purpose of MetaInfCombiner is now purely to run both the
ServiceCombiner and CombineAnnotations classes.
Refactor CombineAnnotations to AnnotationCombiner

The org.scijava.annotations CombineAnnotations class now
implements the Combiner interface.

It was refactored to remove state, allowing its combine method to now
take any output directory (instead of requiring constructing a new
instance for each output dir).

The class was renamed to AnnotationCombiner to fit the naming scheme of
MetaInfCombiner and ServiceCombiner.

The org.scijava.util.CombineAnnotations class was updated to use the
refactored AnnotationCombiner API.