slightly more descriptive names for the file with user interaction:
window management and state tracking
removed some redundant behavior
use new window managemnt lib to simulate dragging.