errh refactor - capture errors closer to interface

unit tests passing
fix null Composite ctor