SPOILERS
I don't think I was consistent with the function names… feel free to clean up
Combine(straw, stick) = torch
Improve(straw) = stick
Improve(stick) = brick
Combine(straw, brick) = oven
Improve(oven) = microwave
Combine(stick, brick) = sledgehammer
Improve(sledgehammer) = jackhammer
Combine(brick, brick) = wall
Transmute(straw) = steel
Transmute(microwave) = fridge
Transmute(rubber band) = stick
Transmute(stick) = rubber band
Transmute(sledgehammer) = paintbrush
Combine(rubber band, rubber band) = ball
Combine(stick, stick) = raft
Transmute(raft) = anchor
Improve(raft) = yacht
Improve(anchor) = submarine
Transmute(wall) = window
Transmute(window) = wall
Combine(wall, wall) = house
Improve(torch) = flashlight
Transmute(flashlight) = solar panel
Split(house) = (wall, wall)
Split(wall) = (brick, brick)
Degrade(brick) = stick
Degrade(stick) = straw
Degrade(rock) = scissors
Degrade(scissors) = paper
Degrade(paper) = rock
Combine(paper, paper) = book
Detransmute(brick) = feather
Degrade(cooked meat) = raw meat
Combine(raw meat, feather) = chicken
Detransmute(chicken) = egg
Transmute(bull) = cow
Transmute(cow) = bull
Split(bull) = (raw meat, raw meat)
Split(cow) = (raw meat, milk)
Improve(raw meat) = cooked meat
Combine(bread, cooked meat) = hamburger
Improve(burger) = cheeseburger
Split(cheeseburger) = (cheese, burger)
Split(burger) = (cooked meat, bread)
Improve(bread) = breadboard
Split(breadboard) = (bread, board)
Transmute(breadboard) = chalkboard
Split(chalkboard) = (chalk, board)