BUG #13766. Fix issues with Xdmf reader for small timesteps.

Xdmf reader was behaving oddly when timesteps were in the range (0, 1e-7). The
problem was due to the XdmfTime::IsValid(...) matching multiple grids for such
low values. That resulted in the data type for the reader changing in request
data, hence producing empty data (BUG #13766).

Fixed by chaging the epsilon used for time comparisons and reporting error when
the data type generated doesn't match the data type expected.

Change-Id: If91fbb4934257ea99728b5ce964df1e790e17ec5
Merge topic '13766_xdmf_small_timestep_bug' into master

1de65daa BUG #13766. Fix issues with Xdmf reader for small timesteps.