Restore tcl_doevent() after window construction

Commenting this out causes test failures (the window size is not
reported correctly)
Have grid call init_canvas by default; make safe for hidden windows.

Need a manual init_canvas when the window is hidden at the time
that pack, grid, or place is called.