EXOCROSS: a general program for generating spectra from molecular line lists