fn parse_input(input: &String) -> Vec<Machine>
Turn the puzzle input into a list of machines by parsing each block separated by a blank line