working, still working on home button, shadows, sessions, and algorithm