public static void ToFile(Character character, string path)
        {
            // Header
            // Version
            // Items
            // Talents
            // Skills

            var lumps = new List <Lump>()
            {
                new Lump()
                {
                    Data = SerializeCharacterInfo(new CharacterInfo(character), character),
                    Type = LumpType.CharacterInfo
                },
                //new Lump()
                //{
                //    Data = SerializeAllocations(character.Allocations),
                //    Type = LumpType.CharacterAllocations
                //}
            };

            var lw = new LumpWriter();

            lw.WriteToFile(path, Version, lumps);
        }
        public static Character FromFile(string path)
        {
            var lw    = new LumpWriter();
            var lumps = lw.ReadFromFile(path);

            var charInfoLump = lumps.Find(x => x.Type == LumpType.CharacterInfo);

            var formatter = new BinaryFormatter();

            using (var ms = new MemoryStream(charInfoLump.Data))
            {
                return((Character)formatter.Deserialize(ms));
            }

            //var charInfo = ReadCharacterInfo(charInfoLump.Data);
            //var character = new Character(hf, entity);
            //character.Name = charInfo.Name;
            //character.Class = charInfo.Class;
            ////character.Level = charInfo.Level;

            //return character;
        }