I'd like to make a piston go up and down just once (then I'll make this thing repeat forever), how do I do that? How do I give the piston the order to go down after it went up in a single tick?
You want to use a monostable circuit. This turns any input pulse into a pulse with an exact length (in ticks). Hook this up to your clock and you can pulse the piston on for 1, 2, or however many ticks you want.
By tweaking your clock speed and monostable circuit you can get very precise piston pulses, e.g. 1 tick on, 5 ticks off; 3 ticks on, 7 ticks off etc.
sethbling, noted redstone genius, gives a very good guide to monstable circuits, as well as other redstone components in this video: