Add support for reading H5T_ARRAY

This gets us partway to fixing #50. @simonster , if you have time to review, I would greatly value your opinion. The most "controversial" aspect of this is that I decided to abandon my previous attempts to read fixed-size arrays by encoding the dimensions within an "instance" and instead decided to create a stub-type for each fixed-size array (with the dimensions encoded as parameters, e.g., `FixedArray3{Float64, 3, 5, 7}` would correspond to `Array{Float64,3}` of size `(3,5,7)`. The stub types don't actually allocate any memory.

The reason I went with the type-based approach is because the whole infrastructure around `hdf5_to_julia_eltype` etc is built on types rather than instances, and arrays-of-fixedarrays (as in the example file I added to `readremote`) seemed ugly if implemented with instances.

But see if you agree.