Facades
Facades allow you to smoothly interface your ConveyorModel with a framework like AngularJS without getting dirty. The Object is setup with a two-way-binding to a ConveyorModel and reflects the Model state.
Facades are different from Interfaces in that they track local changes rather than remote changes.
A ConveyorBelt is generated between a ConveyorFacade and ConveyorModel allowing you to apply whatever transformers you want.