If we go that route then we also won't need the constructor that takes a `File` but we'll need to add a constructor that takes a `char[]` instead. And `streamToCharArray` and friends will need to be static. These bunch of changes are about the same as having those constructors I've added. So which route should we go?