added controls and refactored camera animation