got most of the demo3 basic functionality done