Building serialiser

Setting up a more effective serialiser.
Added save method

Using new header method, but without testing. DOES COMPILE.