implements hslAdjust

progress #8, #9, #10