Added expression to virtual definition

Part 1 of the windowing PR saga. It begins here...

This is largely a naming/semantics question more than any real functionality yet.
What is this for? It doesn't seem like a good idea.