Purpose for NOR, NAND flip-flop
Well, in practice flip flops are usually built at a transistor level with a highly optimized circuit as they are used all over the place and need to be as small and as efficient as possible.  There are a number of ways of building a flip flop depending on the style of logic and the circuit requirements.  One method is to use pass transistors and build something that somewhat resembles SRAM cells.  Another method is to use dynamic logic where the stored value is actually stored as charge in parasitic gate capacitance, however this results in a minimum clock frequency requirement to continuously refresh the stored value.