Add :render support
Update Widget demo to use the new :render style