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.
can you also add a few lines in the tests for the input validation here?