Improvements to CompositeTransform::smartCopy

This branch reworks ```CompositeTransform::smartCopy``` so that it properly copies parameters.  

Noteables:
* The ability to setProperty using the integer version of enums.
* ```CompositeTransform::project``` should work properly now (this came about because ```Transform::operator>>``` was not working as desired train)
* Modifications to ```Object::parameters()``` and ```Object::arguments()``` to provide metaObject properties even if they aren't stored.  I don't think this affects anything.