TST: add regression test for ECAT data read

Record values from ECAT read in nibabel 1.3.0 and test for regression.
TST: test mlist unchanged since nibabel-1.3.0

Record example image mlist to check for regressions.
RF: use WrapStruct and tests for Ecat main header

Inherit from WrapStruct, remove duplicate code, use generic WrapStruct
tests.

Wrapstruct does not by default force the returned results of __getitem__
to be scalar.  We therefore have to force the scaling factors from the
header to be scalars to allow the scalefactors to upcast the data array
to floating point.
RF: trying to understand mlist algorithm

Rewriting mlist algorithm in an attempt to understand it.  Now I've
failed I will need some help.
RF: refactor ECAT methods into functions

Seeing whether I understand the algorithm.

Aiming towards the ability to base an image on a single subheader.