Main App Architecture