Issue #7940 by cableman: Clean up the channels controller and add documentation