cpp: VariantPixelBuffer explicitly includes type_traits
cpp: tiff: Factor out tile flushing from IFD WriteVisitor operator
cpp: test: tiff uses unsigned constants
cpp: test: Correct config.h.in include guards
cpp: tiff: Support BIT image reading and writing

Split read and write visitors' operator() methods into
separate functions to allow special-casing of the
specific parts needed to read and write BIT pixel data,
the only type which is not byte-aligned.
cpp: test: Test writing and reading of all pixel types
cpp: IFD: Use same logic for read and write failures
cpp: test: Remove trigraphs from pixel.h
cpp: test: Scale TIFF test images between the type min and max
cpp: test: Remove trigraphs from tiff.cpp
cpp: tiff: IFD: Remove unnecessary typename usage
cpp: test: tiff: Remove unnecessary typename usage
doc: Document C++ libpng requirement
Merge pull request #1371 from rleigh-dundee/cpp-tiff-pixeldata5

C++: Read and write all pixel types and validate all tags and pixel data