Typical window management systems rely on direct manipulation techniques to organize and layout windows. Direct manipulation encourages the user to specify particular locations rather than higher-level intentions and desires regarding window layout. Our Scheme Constraints Window Manager (SCWM) allows users to express their intentions using both direct manipulation and higher-level commands. Because some user desires are for persistent relationships to hold among windows, we embed a constraint solver to maintain user-specified constraint-based relationships. To enable using constraints and expressing other layout intentions, we have explored a number of interaction paradigms, including voice recognition. The result is a window manager with much more intelligent window layout and behaviour.