Support passing files into program, split tests out