added some comments which describe the purposes of Encoder member variables.