def get_boolean(message, default=True):
    """ Get a yes/no input from the user, prompting them with a message.

    Returns:
        input (boolean): True or False depending on the user's input
    """
    if not isinstance(default, bool):
        raise TypeError('Default must be a boolean')
    result = input('{} ({}): '.format(message, 'no' if not default else 'yes'))
    if not result:
        return default
    result = result.strip().lower()
    return result in ('yes', 'y')
