Issue #5. Basic model representation of programs. Lots of placeholder code for now.