Continued from above: how about no `required` arg and instead do a ducktype check for a file-like object, e.g.
```
    if hasattr(filename, 'read'): # it's a file-like object
        config.readfp(filename)
    else:
        config.read([filename])
```

Let me once again continue below, in the place where Settings() is instantiated in the tests.