Fixed CMYK colors.
  The CMYK colors are inverted before begin fed into
  the display or printer! Such that for example if you
  give pixel value of zero, it is going to be read as
  255 (maximum of one byte!). I guess this hidden inversion
  is because of the different nature of the CMYK as opposed
  to RGB, where in the former the sum of all colors is black
  while in the latter, their sum is white!

  Have a look at here where I asked the question and
  found the answer my self:

  http://stackoverflow.com/questions/23122893/saving-grayscale-in-cmyk-using-libjpeg-in-c/

  Also fixed the readme to fit the current status.