Time selection from file

This is half of the previous orbital-lc pull request.

The configuration item [time]/file points to a file of TSTART, TSTOP pairs (readable by `np.loadtxt`) and they are used to generate a selection string for `gtmktime`. The times can be in MET, MJD or JD (identified by [time]/type).

The selection string generation is done by `utils.time_selection_string` and the `gtmktime` calls by `time_selection` function in class `Observation`, which is called if [time]/file is not empty.

For large amount of selection spans (>~20), they are filtered in groups to avoid a CFITSIO limitation on the selection string length.