Refactor the input/output of images in ImageIO

- Create new class ImageIO with the load and save methods of ImageStack.
- It controls all the lifecycle of the ImageStack instance.
- MainWindow has an instance of ImageIO, PreviewWidget refers to its ImageStack.
Refactoring: Move LibRaw and MetaData code from Image to ImageIO.

- Move the code that loads a raw image from Image constructor to ImageIO::loadRawImage.
- This method also fills the MetaData fields.
- The constructor for Image takes a buffer with data and a MetaData object.
- Move the copy of Exif data from DngFloatWriter to ImageIO.
- Update all the affected unit tests.
Refactor: Add move semantics to Image.

- Add move asignment/constructor to Image, delete copy asignment/constructor.
- ImageStack's Image vector now contains Image instances instead of pointers.
- ImageIO::buildRawImage now returns an Image instance. In case of error, Image::good() returns false.
- MetaData compares the orientation to decide if the format matches.
- Update the unit tests.
Refactoring and render preview with LibRaw.

- Remove Renderer.
- Add a renderPreview method to ImageIO, which loads one of the input images again
  and substitutes the original raw data with the generated one.
- Rename MetaData as RawParameters.
- Protect ExifTransfer constructor with a try/catch block.
- Experimental: calculate a brightness for the preview.
- Use C++11 chrono instead of QDateTime in Log.
Fixed preview orientation in some cameras.

- Fix preview being oriented when rendered.
- Fix flip values for cameras that give the angle instead of a standard orientation value.
- Fix the proposed output name in the GUI.
- Fix the scaling of the thumbnail and preview with bilinear interpolation.
Improve preview brightness.

- Use LibRaw exposure correction to increase the brightness of the preview, up to 3 steps, preserving highlights.
- Change preview quality to 85 (could be even lower...)