Attempt at splitting out and cleaning up the custom multi inputs commit.

This has two critical changes in it:
 - Multi-inputs that pass via a in memory map rather than stringified in config.
 - Combines splits smaller than block size.

I'm assuming it needs to extend `Mapper` due to some Hadoop magic?