1. Replace most objects which are call-by-value with call-by-reference.
2. Remove clipped coordinate slot in primitive object
3. More comments, and coding style adjustment.