Tweaked constructor to take in a Source rather than a FileSource.