Updated some comments in the Header class.
Created new AbstractHeaderConverter and AbstractMimeTypeHeaderConverter classes for converting from one header type to another.
Updated the Accept and ContentType classes to use the new AbstractMimeTypeHeaderConverter class for their conversions..
Created a new AbstractMimeTypeHeader class that contains the common logic for the Accept adn ContentType headers.
Actually implemented and used the AbstractMimeTypeHeaderConverter in the Accept and ContentType classes.
Refactored the Message.CONVERSIONS initialisation to be a bit nicer.
Reformatted code and optimised imports.