Updated with autolayout, working through animations