Hi,
today I found out that luigi targets do not preserve original line endings when using a text format such as UTF8. Quick example:
```
import luigi
from unittest import TestCase
class TestTarget(TestCase):
def test_target(self):
target = luigi.LocalTarget("bar", format=luigi.format.UTF8)
string0 = "foo\nbar\rbaz"
with target.open('w') as stream:
stream.write(string0)
with target.open('r') as stream:
string1 = stream.read()
self.assertEqual(string0.encode(), string1.encode())
```
This test fails with AssertionError: b'foo\nbar\rbaz' != b'foo\nbar\nbaz'.
So here is my question: How can I preserve the original line endings but still use the UTF8 format? I see that I could `luigi.format.Nop` instead but this would be a pity because I would need to handle the formatting everywhere manually. Is there any option to use TextFormat but preserve original line endings?
Thanks in advance,
Christoph