'Creates a new key
:type key_name: string
:param key_name: The name of the key to create
:rtype: :class:`boto.file.key.Key`
:returns: An instance of the newly created key object'

def new_key(self, key_name=None, key_type=Key.KEY_REGULAR_FILE):

    if (key_name == '-'):
        return Key(self.name, '-', key_type=Key.KEY_STREAM_WRITABLE)
    else:
        dir_name = os.path.dirname(key_name)
        if (dir_name and (not os.path.exists(dir_name))):
            os.makedirs(dir_name)
        fp = open(key_name, 'wb')
        return Key(self.name, key_name, fp)
