2 in 1: Competitions without registration, Leaderboard configuration fixes (aggregate / computed columns added)


This pull request unfortunately has two new features in one PR:

1) Competitions without registration required

This is implemented with simple checks on the server side, and the javascript is the biggest change. The only thing I have done that could be improved is to reload the "page" inside the "participate" tab on submission to process the request via AJAX -- this is because we don't have a restful interface to html fragment that needs to be rendered (which seems wrong anyhow). this is a pretty trivial change overal.

2) Aggregate/computed columns in leaderboard

These columns were not completely implemented previously, but now they are. There was minor code rearrangement needed to make these work correctly because computed columns depend on non-computed columns to be created first.