First version.
Removed pointers.
Split struct into separate lists.
Removed x/y coordinates.