refactored/DRYd base methods, set up shadow compositeView basics