fixed #13, problem with mode settings not updating. and somehow it doesn't cause a cyclic dependency error, though i'm not sure why