made major classes into proper singleton