[0.4] Wrote base for #7 (need to implement saving and loading specific instances). #24 is almost done.