Swiss-system tournament implemented with AngularJS