def unicode_open(*args, **kwargs):
    """
        Opens files in UTF-8 encoding by default, unless an 'encoding'
        keyword argument is passed. Returns a file object.
    """
    if not 'encoding' in kwargs:
        kwargs['encoding'] = 'utf-8'
    return open(*args, **kwargs)
