Begin breaking functionality out into individual controllers