allow loading from all objects implementing `read` (e.g. StringIO)