split example across multiple files
lots more changes; getting there!
lots more changes. let's try to compile it!