Add support for margins to a bunch of layouts.

All a layout needs to do to implement margins is add "margin"
to its config and pass it to _Window.place, which will update its
position and dimensions to account for the margin.