ISPN-4528 Genericize remaining M/R internal classes

Master only. See https://issues.jboss.org/browse/ISPN-4528 for more details. 
Oops, I was looking at your original version without warnings enabled in the IntelliJ editor and I couldn't see what the whole fuss was about :)

You're right about Will's suggestion, it doesn't compile for me either - although error is a bit different on OpenJDK7/Java8:

    [ERROR] required: T[]
    [ERROR] found: java.lang.Class<org.infinispan.distexec.mapreduce.MapReduceManagerImpl.DeltaList>
    [ERROR] reason: varargs mismatch; java.lang.Class<org.infinispan.distexec.mapreduce.MapReduceManagerImpl.DeltaList> cannot be converted to java.lang.Class<? extends org.infinispan.distexec.mapreduce.MapReduceManagerImpl.DeltaList<T>>

TBH I don't really like generics in our internal classes anyway, having the same object instance used as `DeltaListExternalizer<String>` and `DeltaListExternalizer<Integer>` at the same time is just too weird. It's true we do this even in the public API, as a cache can be both `Cache<String, String>` and `Cache<Integer, Integer>`, but we don't have a choice there :)