move display management to the top level of state so it can be altered by all components