Update load_si_data() to handle other kinds of file and also return path