Ready to be presented.

Still need to implement adv functiosn as well as "common sense"
functionality, but we have the bare bones working.