Working widget replacement demo, Needs cleanup