Added writeable interface
Overloaded read/write methods to accept file
Added mappers to facilitate converting objects to/from NBT tags