Extracting CharacterizationService

By creating a Service class, I'm shifting the responsibility from
GenericFile, which should not worry about the characterization
process.

*Make sure specs pass on Travis as I can't get my instance to run
clean tests.*