Rearranged write readback test code and added some comments.
Fixed string encoding and decoding bugs.
Added write readback tests to file with no python type information stored (either no information or just matlab information).
Added tests for bug where a complex number with one field as NaN but the other not is read back as NaN in both fields.
Parameterized the sizes of the random datasets used in the tests.