clean up

Classes in separate files, added protected vars for parent class.