def all_permutations(options):
    """
    Generates a list of all possible permutations of a list of options
    """
    solutions = [[]]

    for option_set in options:
        solutions = [item + [option]
                     for item in solutions
                     for option in option_set]

    return solutions