Fixed reading from disk. Preliminary reading/writing to disk seems to work with a couple bugs to iron out