add get/set channels + test case
enhance testChannels to deal with setting to null.
implement get/setHeaders()
add testHeaders() and enhance code so it passes