OOPified things a little