update only changed settings in settings cache on key event in InterfaceThread

this is more efficient than looking up all the values again (and in the process
temporarily locking the other threads)
move pixelToHz computation for cursor Hz rendering into InterfaceThread
update todo list