Add grayscale filter.
Add overloaded constructor allowing to define, wchich RGB channels to
use, when converting to grayscale.
Add parameter validation to overloaded constructor.
Add documentation for class and constructors.
Merge branch 'feature-grayscale-filter'