Make the text source data more generalized

Add support for loading text from files