Improve the algorithm for autolayout so that it supports:
  • Reasonable horizontal/vertical layouts
  • Partial autolayouts