much more on basic data structures -- this mixes a bit with control structures, but that should be fine