An optimization to layout managment.

Starting from this commit, the layout of elements are undefined until
the next step. Size based operations should occur during OnSize events.
Further optimizations to the layout manager.
Further optimizations and cleanup to the layout manager.
Another optimization.