quixotic object-oriented version working

If not yet entirely object-oriented