Allocate enough space in the per-layer input arrays to handle all reasonable layer amounts.
Allocate enough space in the per-layer input arrays to handle all reasonable layer amounts.

Section 10.9.1.2 of the Fortran 95 standard [*] says that this will
work: that is, the user putting in too few numbers for `ah`, `hmean`,
and `g_vec` is acceptable, and the remaining slots in them are filled
with nulls (whatever exactly it means by that).

I also expect that passing a larger array as the actual parameter for
an explicit-size dummy parameter whose size is declared to be smaller
will just produce an array slice, which is exactly the right thing
for this purpose.

[*] http://j3-fortran.org/doc/standing/archive/007/97-007r2/pdf/97-007r2.pdf

Fixes #53.

edoddridge/MIM,edoddridge/aronnax