Port reducer code to new Python API.

The ISIS SANS stuff still depends on it so we need to move it.
Refs #7469
Port EQSANSQ2DTest to new Python API Refs #7469
Move indirect diffraction reducer to new API.

It's not SANS but given that the base-class has to move too.
Refs #7469
Merge branch 'feature/7469_isis_sans_api2' into develop