replace endftod with fortran function

fix for #517. This fortran function matches existing behavior which doesn't really go along with "fail early, fail often". Some changes may be needed in endf.pyx so that the error catching is unnecessary.
It would be better to use constants provided by the C interoperability module, e.g.
``` Fortran
use, intrinsic :: ISO_C_BINDING
real(C_DOUBLE) :: val
```