Now creates and reads almost properly