Add evolution data, short explanation coming soon

Addresses part of #1
Add load/save functionality

Uses JSON to write the save file, detects by name. Objects are reconstructed to give full functionality as JSON can't save functions