functionality organized into classes. Functions are still expensive and dirty.