Added new class functions for CR and fixed bugs
For CR, new method:
selfRotate,move,rotate

Bugs:
the last light's optical distance in the CR is not counted until this commit