reorganized source code for all basic object definition/augmentation