Automatically compute box sizes

When creating layouts on the fly with `make_eeg_layout` and
`make_grid_layout`, an appropriate box size is now automatically
generated. The boxes will be as large as possible, without any boxes overlapping.

Additionally, `make_grid_layout` now accepts a `n_col` parameter to add some flexibility to the generated grid.
`float | None`