Added Validators and controls. Changed api a bit. Works well so far.