did a lot of auto-layout work, but not 100% done