what is the difference between a latch and a flip flop?