Snap-together motion: assembling run-time animations