Seperated interface & window draw & update code.